我想通过 FFmpeg 播放视频文件,但出现此错误:
RTP 复用器仅支持一种流
当我写这个时,我得到了这个错误:
ffmpeg.exe -i SomeVideo.mp4 -f rtp rtp://127.0.0.1:11111
我不知道出了什么问题。
您的 ffmpeg 命令创建two流,一种用于视频,一种用于音频。
改为这样做:
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
Port 11111
然后有没有音频的视频(-an
).
Port 11112
然后有音频但没有视频(-vn
).
读取每个流,例如ffplay rtp://127.0.0.1:11112
.
(其中部分来自建议http://lucabe72.blogspot.com/2010/04/rtp-streaming-with-ffmpeg.html http://lucabe72.blogspot.com/2010/04/rtp-streaming-with-ffmpeg.html .)
编辑2021/08
命令应该是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
- 11111 => 视频 RTP
- 11112 => 隐式视频 RTCP
- 11113 => 音频 RTP
- 11114 => 隐式音频 RTCP
因为RTCP端口会自动设置为RTP端口+1,否则播放时会出现绑定失败的错误。
https://ffmpeg.org/ffmpeg-protocols.html#rtp https://ffmpeg.org/ffmpeg-protocols.html#rtp
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)