我想通过 FFmpeg 播放视频文件,但出现此错误:
RTP 复用器中仅支持一个流
当我写这个时,我得到了这个错误:
ffmpeg.exe -i SomeVideo.mp4 -f rtp rtp://127.0.0.1:11111
我不知道怎么了。
您的 ffmpeg 命令创建两个流,一个用于视频,一个用于音频。改为这样做:
ffmpeg -re -i SomeVideo.mp4 -vcodec copy -an -f rtp rtp://127.0.0.1:11111 -vn -acodec copy -f rtp rtp://127.0.0.1:11112
然后端口11111
有没有音频的视频 ( -an
)。
然后端口11112
有没有视频的音频 ( -vn
)。
使用例如 读取每个流ffplay rtp://127.0.0.1:11112
。
(其中一部分来自http://lucabe72.blogspot.com/2010/04/rtp-streaming-with-ffmpeg.html的建议。)
命令应该是
ffmpeg -re -i SomeVideo.mp4 -vcodec copy -an -f rtp rtp://127.0.0.1:11111 -vn -acodec copy -f rtp rtp://127.0.0.1:11113
因为 RTCP 端口会自动设置为 RTP 端口 + 1,否则播放时会出现绑定失败错误。