我通过以下命令使用ffmpeg捕获实时视频流:
ffmpeg -re -i STREAM_URL -t 3600 c:/test.mp4
ffmpeg中是否有任何操作在流停止时生成消息
答案 0 :(得分:0)
这实际上取决于输入的流媒体类型。您必须首先定义工作中允许的流式传输类型(例如HLS,RTMP)
当流媒体网址在流式传输时真的不可用时,在一般情况下,FFmpeg只返回EOF标志,因此您实际上不知道流式传输是否已关闭,或者只是结束。
在直播中可能会更复杂。当流URL处于活动状态但没有流被推入输入流URL时,它只是在没有任何消息的情况下永远等待。
有趣的是,你仍然可以在源代码级别中捕获上述情况中的少数几件事。因此,如果您只是使用命令行,那么实际上无法知道流是否已关闭。你也必须检查服务器。
答案 1 :(得分:0)
这有效:
ffmpeg -f dshow -benchmark -t 00:00:30 -s 1280x720 -i video0 -b 5000k -report c:/main/sample.avi
在CMD
上运行它会捕获30秒的实时视频并将其与报告一起保存。