我正在尝试使用 python 通过 ffmpeg 接收要由 OpenCV 处理的 RTSP 帧。这没关系。
但是我还需要将这段视频写入磁盘每分钟一个视频。最后一部分是问题所在。
这没问题,但只能写入单个文件“OUTPUT.TS”:
command = ['C:/ffmpeg/bin/ffmpeg.exe',
'-rtsp_transport', 'tcp', # Force TCP (for testing)
'-max_delay', '30000000', # 30 seconds (sometimes needed because the stream is from the web).
'-i', STREAM_ADDRESS,
'-f', 'rawvideo', # Video format is raw video
'-pix_fmt', 'bgr24', # bgr24 pixel format matches OpenCV default pixels format.
'-an', 'pipe:',
'-vcodec', 'copy', '-y', 'OUTPUT.TS']
ffmpeg_process = subprocess.Popen(command, stdout=subprocess.PIPE)
但是因为我使用的是 -f RAW,所以我不能添加像
这样的东西'-f segment -segment_time 1800 -strftime 1 "%Y-%m-%d_%H-%M-%S.ts'
我尝试使用一些 ffmpeg 组合但没有成功。
有什么方法可以在 FFMPEG 上执行此操作而无需启动/停止 ffmpeg 进程?