使用FFmpeg的点对点流传输存在问题



我想将网络摄像头的视频和麦克风的声音从一台计算机直播到另一台计算机,但存在一些问题。

当我使用这个命令行时:

ffmpeg.exe -f dshow -rtbufsize 500M -i video="Camera":audio="Microphone" -c:v mpeg4 -c:a mp2 -f mpegts udp://127.0.0.1:1234

FFmpeg控制台开始填充黄色消息,流变得不稳定:http://s16.postimg.org/qglcgr345/Untitled.png

为了解决这个问题,我在命令行中添加了新的参数来设置帧速率-r 25:

ffmpeg.exe -f dshow -rtbufsize 500M -r 25 -i video="Camera":audio="Microphone" -c:v mpeg4 -c:a mp2 -f mpegts udp://127.0.0.1:1234

在我添加-r 25后,黄色消息的问题消失了,但随后出现了另一个问题。当我用这个命令行重新启动FFmpeg时,视频和声音看起来是同步的,但在视频和声音之间出现约25秒的延迟后,声音会落后于视频。我尝试过使用不同的协议UDP、TCP、RTP,但问题是一样的。请帮帮我!

我找到了解决"-r"和异步音频和视频问题的答案。谁感兴趣的答案在这里:https://trac.ffmpeg.org/wiki/DirectShow(在"指定输入帧速率"段中)。

相关内容

最新更新