31

我有一个原始 YUV 视频文件,我想在 Adob​​e CS6 Premiere 中对其进行一些基本编辑,但它无法识别该文件。我想使用 ffmpeg 将其转换为 Premiere 可以接受的内容,但我希望它是无损的,因为之后我将再次需要 YUV 格式的它。我想到了 avi、mov 和 prores,但我似乎无法弄清楚 ffmpeg 的正确命令行以及如何确保它是无损的。

谢谢你的帮助。

4

1 回答 1

66

是的,这是可能的。您无法打开该原始视频文件是正常的,因为它只是一个巨大文件中的原始数据,没有任何标题。所以 Adob​​e Premiere 不知道尺寸是多少,帧率是多少等。

首先确保您下载了FFmpeg命令行工具。然后在安装后,您可以通过运行带参数的命令开始转换。在开始转换之前,您必须自己填写一些参数:

  1. 您使用的是什么类型的 YUV 像素格式?最常见的格式是 YUV4:2:0 平面 8 位 ( YUV420p)。您可以键入ffmpeg -pix_fmts以获取所有可用格式的列表。
  2. 什么是帧率?在我的示例中,我将使用-r 25fps。
  3. 你想用什么编码器?libx264 (H.264) 编码器非常适合无损压缩
  4. 你的框架尺寸是多少?在我的示例中,我将使用-s 1920x1080

然后我们得到这个命令来做你的压缩。

ffmpeg -f rawvideo -vcodec rawvideo -s 1920x1080 -r 25 -pix_fmt yuv420p -i inputfile.yuv -c:v libx264 -preset ultrafast -qp 0 output.mp4

对所有其他参数的一点解释:

  • -f rawvideo输入格式设置为原始视频容器
  • -vcodec rawvideo输入文件设置为未压缩
  • 随着-i inputfile.yuv您设置输入文件
  • -c:v libx264设置编码器以将视频编码为 libx264 。
  • -preset ultrafast设置只是加快压缩速度,因此您的文件大小将大于将其设置为veryslow.
  • -qp 0您一起设置最高质量。在我们的示例中,0 是最好的,51 是最差的质量。
  • 然后output.mp4是您存储数据的新容器。

在 Adob​​e Premiere 中完成后,您可以通过反转所有参数将其转换回 YUV 文件。FFmpeg 可以识别 mp4 容器内的内容,因此您无需为输入提供参数。

ffmpeg -i input.mp4 -f rawvideo -vcodec rawvideo -pix_fmt yuv420p -s 1920x1080 -r 25 rawvideo.yuv

于 2013-04-03T07:08:38.400 回答