ffmpeg rtsp_transport to rtmp issues



我正在做一个项目,需要从YouTube获取rtsp链接,并使用ffmpeg将这些视频流式传输到rtmp服务器。我的解决方案有效,但是存在一些问题。

我正在使用以下设置:

 -max_delay 0 -initial_pause 0 -rtsp_transport udp -i " + inputLink + " -vcodec libx264 -acodec mp3 -ab 48k -bit_rate 450 -r 25 -s 640x480 -f flv "  + stream

inputLink 替换为 rtsp 链接,流替换为 rtmp 服务器链接

所以这有效,但这是我遇到的问题:

  • 在每个视频的开头,都有一个很大的滞后峰值/大量帧掉落,然后视频重新同步并正常播放
  • 有些视频会崩溃ffmpeg,显示"转换失败"消息,并且在转换/流过程中丢失了许多帧。

  • 在每个视频结束时,它会开始滞后/丢帧,
  • 就在视频末尾附近,换句话说,它不会正常结束,每个视频都以滞后/丢帧结束

我一直在努力工作很长时间,现在我终于做到了,我只需要通过处理这两个问题来完善它,如果有人有关于rtsp_transport协议以及如何让它流的有用信息没有问题,我将不胜感激。谢谢!

你弄错了一些设置。

-bit_rate 450 :你要求每秒450位,难怪会掉很多帧!它应该是 450k。

如果您想要 450 kbps 的流,请使用 -ab 48k -vb 402k , 其中 402 = 450 - 48 .

flv 格式仅支持某些音频速率。您还需要将-ar与以下值之一一起使用:44100、22050 或 11025。

ffmpeg -i rtsp://... -c:v libx264 -c:a mp3 -ab 48k -ar 44100 -vb 402k -r 25 -s 640x480 -f flv test.flv

相关内容

  • 没有找到相关文章

最新更新