FFmpeg 命令行带有选项 tee muxer,同时输出到视频文件和 image2 muxer

FFmpeg 命令行带有选项 tee muxer,同时输出到视频文件和 image2 muxer

我想保存视频中的静态图像,该视频位于直接 http URL 上。同时我也想保存视频。如何使用 ffmpeg 及其特殊的 tee muxer 同时保存图像和视频?我的尝试没有成功:

ffmpeg -fflags +genpts -i http://www.example.com/video.avi -map 0:v -map 0:a -c:v copy -c:a copy -f tee 'video.avi|[f=image2]%06d.jpg'

当然,这只是一个简化的例子,否则我可以使用标准的 linux 过滤器/命令 tee,但实际上我希望视频数据将来通过 ffmpeg 进行额外的视频/音频过滤。

答案1

当您希望仅编码一次并重复使用编码后的数据包时,可以使用复用器tee。当您的各种输出不能使用相同的编码输出时,tee 复用器就无用了。

所以,

ffmpeg -fflags +genpts -i http://www.example.com/video.avi \
       -map 0:v -map 0:a -c:v copy -c:a copy video.avi \
       -map 0:v %06d.jpg

您可能想要添加-q:v 1来控制 JPEG 质量。

       -map 0:v -q:v 1 %06d.jpg

相关内容