13

我正在使用此调用将文件转换为 PNG 格式:

ffmpeg.exe -vframes 1 -vcodec rawvideo -f rawvideo -pix_fmt rgb32 -s <width>x<height> -i infile -f image2 -vcodec png out.png

我想使用一个可以链接或编译成闭源​​商业产品的转换器,不像FFmpeg,所以我需要了解我传入的输入文件的格式。

那么,是什么rawvideo意思FFmpeg呢?

FFmpeg确定输入文件具有哪种类型的原始格式,还是rawvideo表示不同的东西?

这里是什么rgb32意思?

输入文件的大小比(width * height * 8)字节多一点。

4

1 回答 1

14

-vcodec通常,视频文件包含嵌入在媒体容器(例如 mp4、mkv、wav 等)中的视频流(其格式使用 指定)。该-f选项用于指定容器格式。-f rawvideo基本上是一个虚拟设置,它告诉 ffmpeg 您的视频不在任何容器中。

-vcodec rawvideo表示容器内的视频数据没有被压缩。但是,有很多方法可以存储未压缩的视频,因此需要指定-pix_fmt选项。在您的情况下,-pix_fmt rgb32表示原始视频数据中的每个像素使用 32 位(红色、绿色和蓝色各 1 个字节,其余字节被忽略)。

有关选项含义的更多信息,请参阅ffmpeg 文档

于 2011-08-30T19:36:55.690 回答