FFMPEG-流媒体在几秒钟后停止

2023-12-25

你好,亲爱的社区

这就是我最近几天以来正在处理的事情。在ffmpeg社区进行彻底搜索后,我无法找到解决方案。我无法将本地 flv 流式传输到 facebookrtmp server.

我正在运行以下命令将本地 flv 视频流式传输到rtmpFacebook 服务器用于实时流式传输我的本地文件。

```ffmpeg -re -i SampleM.flv -acodec libmp3lame  -ar 44100 -b:a 128k -pix_fmt yuv420p -profile:v baseline -s 426x240 -bufsize 6000k -vb 400k -maxrate 1500k -deinterlace -vcodec libx264 -preset veryfast -g 30 -r 30 -f flv "rtmp://live-api.facebook.com:80/rtmp/my_key"```

这是一个不幸的情况,即使在阅读之后ffmpeg文档中,我一直无法找到导致我出现这种情况的问题,如下所示。

我仍然缺少一些我需要知道的东西。

以下是上述命令的执行日志。

```ffmpeg version N-91024-g293a6e8332 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7.3.0 (GCC)
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
  libavutil      56. 18.100 / 56. 18.100
  libavcodec     58. 19.101 / 58. 19.101
  libavformat    58. 13.102 / 58. 13.102
  libavdevice    58.  4.100 / 58.  4.100
  libavfilter     7. 21.100 /  7. 21.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Input #0, flv, from '.\video.flv':
  Metadata:
    audiodelay      : 0
    canSeekToEnd    : 1
    creationdate    : Fri Feb 03 11:52:46 2006
                    :
  Duration: 00:00:16.92, start: 0.000000, bitrate: 316 kb/s
    Stream #0:0: Audio: mp3, 22050 Hz, stereo, fltp, 40 kb/s
    Stream #0:1: Video: vp6f, 1 reference frame, yuv420p, 360x288 (368x288), 266 kb/s, 25 fps, 25 tbr, 1k tbn
Stream mapping:
  Stream #0:1 -> #0:0 (vp6f (native) -> h264 (libx264))
  Stream #0:0 -> #0:1 (mp3 (mp3float) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
[graph_1_in_0_0 @ 0000020c0bcc4200] tb:1/22050 samplefmt:fltp samplerate:22050 chlayout:0x3
[format_out_0_1 @ 0000020c0bca2cc0] auto-inserting filter 'auto_resampler_0' between the filter 'Parsed_anull_0' and the filter 'format_out_0_1'
[auto_resampler_0 @ 0000020c0bca5140] ch:2 chl:stereo fmt:fltp r:22050Hz -> ch:2 chl:stereo fmt:fltp r:44100Hz
[graph 0 input from stream 0:1 @ 0000020c0c4f4600] w:360 h:288 pixfmt:yuv420p tb:1/1000 fr:25/1 sar:0/1 sws_param:flags=2
[scaler_out_0_0 @ 0000020c0c4f73c0] w:426 h:240 flags:'bicubic' interl:0
[scaler_out_0_0 @ 0000020c0c4f73c0] w:360 h:288 fmt:yuv420p sar:0/1 -> w:426 h:240 fmt:yuv420p sar:0/1 flags:0x4
[libx264 @ 0000020c0bc80600] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0000020c0bc80600] profile Constrained Baseline, level 3.0
[libx264 @ 0000020c0bc80600] 264 - core 155 r2901 7d0ff22 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=1:0:0 analyse=0x1:0x111 me=hex subme=2 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=7 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=30 keyint_min=3 scenecut=40 intra_refresh=0 rc_lookahead=10 rc=abr mbtree=1 bitrate=400 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 vbv_maxrate=1500 vbv_bufsize=6000 nal_hrd=none filler=0 ip_ratio=1.40 aq=1:1.00
Output #0, flv, to 'rtmp://live-api.facebook.com:80/rtmp/my key:
  Metadata:
    audiodelay      : 0
    canSeekToEnd    : 1
    creationdate    : Fri Feb 03 11:52:46 2006
                    :
    encoder         : Lavf58.13.102
    Stream #0:0: Video: h264 (libx264), 1 reference frame ([7][0][0][0] / 0x0007), yuv420p, 426x240, q=-1--1, 400 kb/s, 30 fps, 1k tbn, 30 tbc
    Metadata:
      encoder         : Lavc58.19.101 libx264
    Side data:
      cpb: bitrate max/min/avg: 1500000/0/400000 buffer size: 6000000 vbv_delay: -1
    Stream #0:1: Audio: mp3 (libmp3lame) ([2][0][0][0] / 0x0002), 44100 Hz, stereo, fltp, delay 1105, 128 kb/s
    Metadata:
      encoder         : Lavc58.19.101 libmp3lame
No more output streams to write to, finishing.e=00:00:16.51 bitrate= 533.3kbits/s speed=0.992x
[flv @ 0000020c0bc97fc0] Failed to update header with correct duration.
[flv @ 0000020c0bc97fc0] Failed to update header with correct filesize.
frame=  424 fps= 25 q=-1.0 Lsize=    1153kB time=00:00:16.95 bitrate= 557.1kbits/s speed=0.997x
video:869kB audio:265kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.666647%
Input file #0 (.\video.flv):
  Input stream #0:0 (audio): 649 packets read (84767 bytes); 649 frames decoded (373824 samples);
  Input stream #0:1 (video): 424 packets read (566376 bytes); 424 frames decoded;
  Total: 1073 packets (651143 bytes) demuxed
Output file #0 (rtmp://live-api.facebook.com:80/rtmp/my key):
  Output stream #0:0 (video): 424 frames encoded; 424 packets muxed (889641 bytes);
  Output stream #0:1 (audio): 649 frames encoded (747648 samples); 650 packets muxed (271673 bytes);
  Total: 1074 packets (1161314 bytes) muxed
[libx264 @ 0000020c0bc80600] frame I:18    Avg QP:27.75  size:  7001
[libx264 @ 0000020c0bc80600] frame P:406   Avg QP:32.67  size:  1879
[libx264 @ 0000020c0bc80600] mb I  I16..4: 39.3%  0.0% 60.7%
[libx264 @ 0000020c0bc80600] mb P  I16..4:  8.3%  0.0%  2.3%  P16..4: 42.2% 16.2%  4.4%  0.0%  0.0%    skip:26.6%
[libx264 @ 0000020c0bc80600] final ratefactor: 28.61
[libx264 @ 0000020c0bc80600] coded y,uvDC,uvAC intra: 40.2% 33.7% 9.2% inter: 23.8% 7.5% 0.2%
[libx264 @ 0000020c0bc80600] i16 v,h,dc,p: 24% 50% 20%  6%
[libx264 @ 0000020c0bc80600] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 13% 34% 18%  5%  5%  4%  8%  4%  8%
[libx264 @ 0000020c0bc80600] i8c dc,h,v,p: 67% 24%  7%  2%
[libx264 @ 0000020c0bc80600] kb/s:418.33```

这张图片显示该流在 Facebook 上存活了几秒钟 https://i.stack.imgur.com/JpqNE.png

```[flv @ 0000020c0bc97fc0] Failed to update header with correct duration.
[flv @ 0000020c0bc97fc0] Failed to update header with correct filesize.```

请纠正我,日志中列出的上述错误似乎是视频在几秒钟后停止播放的主要原因。我已经检查了延迟问题,但无论如何它们都无济于事。

请帮助我解决这个问题。我将非常感激。 :')

当我使用 Google 计算引擎而不是我自己的 PC 作为流媒体服务时,流媒体结束得更早。


在混合 flv 文件结束时,FFmpeg 使用持续时间和文件大小值更新标头(在文件前面)。但是,当您进行流式传输时,ffmpeg 无法向前查找,因此会显示警告。

您可以通过添加标志(-flvflags no_duration_filesize), e.g.:

ffmpeg -re -i SampleM.flv -acodec libmp3lame -ar 44100 -b:a 128k \
  -pix_fmt yuv420p -profile:v baseline -s 426x240 -bufsize 6000k \
  -vb 400k -maxrate 1500k -deinterlace -vcodec libx264           \
  -preset veryfast -g 30 -r 30 -f flv                            \
  -flvflags no_duration_filesize                                 \
  "rtmp://live-api.facebook.com:80/rtmp/my_key"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

FFMPEG-流媒体在几秒钟后停止 的相关文章

随机推荐

  • jq绘图到图像

    我知道这个问题已经存在 但我认为它没有得到正确的回答 到目前为止 我正在使用这种方法 对于我必须做的任何情节 它都 100 有效 请评论代码的效率等 我想知道其中是否还有错误 非常感谢 function jqplotToImg obj va
  • 哪里应该使用PageViewer?

    我已经实施了浏览器和数量Fragment作为孩子 这里每个孩子都会覆盖自己的onAttach onCreateView onViewCreated and setUserVisibleHint 在我的应用程序中 导航行为是随机的 并非每次都
  • 是否可以将矩阵映射到 igraph 对象?

    我有一个矩阵A定义自相交多边形的有序线段 A lt t matrix c 0 0 1 0 1 2 2 2 2 1 0 1 0 4 1 4 1 2 2 2 2 3 0 3 0 0 nrow 2 par mfrow c 1 3 plot A c
  • 使用Python向远程进程发送信号

    有两台机器 其中一台有脚本wait for signal sh 第二个有一个名为controller py 每个脚本的代码如下所示 目的controller py是产生一个调用的子进程wait for signal sh脚本通过ssh 当控
  • UILabel:如何设置字体大小?

    如何设置字体大小UILabel My code UILabel myView UILabel alloc initWithFrame RectFrame myView setBackgroundColor UIColor blueColor
  • 失去焦点时窗口闪烁?

    我一直在开发基于 C 的 Windows 窗体应用程序 我需要一些帮助 我正在尝试重新创建大多数 Windows 应用程序在窗体失去父窗体焦点时出现的窗口闪烁 我可以解释这一点的最好方法是打开计算器 打开帮助窗口并尝试单击计算器 然后帮助窗
  • 如何获取正在运行的 EC2 现货实例的价格?

    我正在尝试使用 boto3 api 创建 ec2 现货实例 到目前为止 我能够获取现货实例历史价格 启动现货实例等 但我不知道如何使用 boto api 获取我们为现货实例支付的价格 有人知道怎么做吗 Thanks Update See S
  • 如何检查 CMakeLists.txt 中的 SDL2_ttf?

    我目前正在使用 SDL2 ttf 库编写一个 SDL2 程序 并希望在 CMakeLists txt 中添加对其的检查 我怎么做 我正在使用 CMake 3 1 FindSDL ttf 不适用于 SDL2 因此您必须使用第三方选项 我用过这
  • 每天更改图标

    就像 iPhone 和 iPod 上的日历应用程序一样 如何每天更改图标 我认为这是针对 iOS 应用程序的 答案是 你不能 日历应用程序可以访问 iOS 中的功能 而我们普通开发人员无法访问这些功能 你也许可以用越狱的手机来实现这一点 但
  • 在 R Markdown 文档中,“包含”docx 输出?

    在下面的 Rmd 中我有includes in header 用于 pdf 输出和includes before body 用于 docx 输出 docx 输出有类似的东西吗 我当前的黑客是包括生成 docx 输出时有条件地代码块 但我不想
  • CL 格式秘诀:将 nil 作为值处理

    我一直在寻找格式化食谱 但我找不到我要找的东西 format nil CONTROL STRING day name num apples 假设我不想改变上面形式中的参数 只是CONTROL STRING day and num apple
  • Google 地图 API V3 - 自定义图块

    我目前正在开发 Google Maps API V3here http apps humannetworklabs com GoogleMapAPI html 如果在 21 到 23 之间缩放 地图上将会出现图像叠加 该图像加载时间太长 我
  • Android 振动已弃用。如何在 Android>= API 26 中使用 VibrationEffect?

    我正在使用安卓的VIBRATOR SERVICE为按钮触摸提供触觉反馈 Vibrator getSystemService VIBRATOR SERVICE vibrate 300 Android Studio 给我警告该方法vibrate
  • Java AES CBC 解密

    PHP 加密函数 privateKey 1234567812345678 iv 1234567812345678 data Test string encrypted mcrypt encrypt MCRYPT RIJNDAEL 128 p
  • 在 HMM 中查找前 k 个维特比路径

    我需要编写一个算法来查找 HMM 中的前 k 个维特比路径 使用常规维特比算法来查找最佳路径 我想我可能需要为每个状态 N 保存一个大小为 k 的列表 V t N 其中包含以状态 N 结尾的前 K 个路径 但我不太确定如何跟踪该列表 有任何
  • 如何在 PHP、HTML 标签中回显 [重复]

    这个问题在这里已经有答案了 我在发帖之前经历过这个 如何在 PHP 中回显 HTML https stackoverflow com questions 1100354 easiest way to echo html in php 而我仍
  • SwiftUI:使列表项的剩余区域检测点击[重复]

    这个问题在这里已经有答案了 我的 macOS 应用程序上有一个基于自定义导航系统构建的导航侧边栏 要导航到我检测到的不同视图 onTapGesture列表项的 s 如下所示 List selection selection ForEach
  • 在 sscanf 中转义方括号 ]

    我想扫描像这样的行 25 28 gt 34 我写了一个小程序来测试一下 include
  • 循环遍历 Mongo Collection 并更新每个文档中的字段

    我在一个集合中有日期插入不正确 并且位于一个简单的集合中 2015 09 10 string format 我想更新它们以纠正ISO 日期格式 我尝试过循环 MongoforEach 但我对 shell 不太了解如何更新集合中的每个文档 到
  • FFMPEG-流媒体在几秒钟后停止

    你好 亲爱的社区 这就是我最近几天以来正在处理的事情 在ffmpeg社区进行彻底搜索后 我无法找到解决方案 我无法将本地 flv 流式传输到 facebookrtmp server 我正在运行以下命令将本地 flv 视频流式传输到rtmpF