ffmpeg
可以作为输入或输出处理RTMP流,运行良好。
我想要将一些视频(由Python脚本管理的动态播放列表)流式传输到RTMP服务器,目前我正在进行相当简单的操作:使用FFmpeg一个接一个地将我的视频流式传输到RTMP服务器,但是每次视频结束时都会导致连接中断,并且下一个视频开始时需要重新建立连接。
我希望能够连续地流式传输这些视频而不会有任何连接中断,以便正确地查看视频流。我使用此命令将我的视频流式传输到服务器:
ffmpeg -re -y -i myvideo.mp4 -vcodec libx264 -b:v 600k -r 25 -s 640x360 \
-filter:v yadif -ab 64k -ac 1 -ar 44100 -f flv \
"rtmp://mystreamingserver/app/streamName"
我在互联网上寻找了很多天的解决办法,发现一些人谈到使用命名管道作为ffmpeg
的输入。我尝试过,但效果不佳,因为ffmpeg
不仅在新视频到来时关闭RTMP流,而且也会自行关闭。
有没有什么方法可以实现这个功能?(用ffmpeg
向RTMP服务器流式传输动态播放列表,而不中断连接)
cat video.mp4 > fifo
,ffmpeg开始流式传输并在流式传输视频后退出。我认为我不知道如何正确使用命名管道,当我执行cat video1.mp4 video2.mp4 > fifo
时,ffmpeg在流式传输第一个视频后显示错误stream 4,offset 0x1d83c:partial file
。我知道这是我的错误,我必须以适当的方式通过管道传递视频数据。 - kketchcat pipe1 pipe2 pipe3 > stream
,并且我使用该流管道作为FFMPEG的输入来发布我的流。但是,由于我正在寻找一个动态播放列表,我该如何将更多的视频发送到“stream”管道以保持流的活动状态? 我还没有想出来。(请注意,除了第一个视频外,我必须使用tail命令剪切每个视频文件的元数据才能使其正常工作) - kketch