如何在Final Cut Pro X中以最小文件大小导出最佳质量的视频?


0

我有两个mp4视频片段。每个剪辑为150 MB。我想将两个剪辑组合成一个,这将在逻辑上创建一个300 MB的文件。

我使用Final Cut Pro X来实现这一目标。结果是一个非常大的文件:惊人的1.5 GB。怎么会?那么你们在这种情况下做什么来组合两个剪辑并保持文件大小应该是它应该是什么?

我提供了我想要组合的样本片段:


如果您告诉我们剪辑的分辨率(以像素为单位)以及它们有多长,这将有所帮助。否则这个问题就无法得到合理的回答。顺便说一下,第一个样本片段有0个字节。另外,由于我没有FCP,你能告诉我们渲染最终视频的选项吗?最后,你必须使用FCP吗?
slhck

Answers:


0

您的源素材使用有损压缩进行编码。为了在编辑后保持视频质量,必须使用无损压缩导出视频,这样效率低得多,从而导致更大的文件大小。

另一种方法是使用有损算法重新编码材质,但即使您模仿原始剪辑的压缩设置,质量也会受到影响。这被称为“世代损失”。维基百科有一个很好的视觉示例,涉及重新编码JPEG图像很多次。您当然可以使用任意压缩算法导出视频,以降低质量下降,但代价是更大的文件,反之亦然。

如果您只是简单地将两个剪辑(类似地编码并连续播放)合并到一个文件中,而不进行其他编辑,则可以创建新文件而无需重新编码,但可以通过连接原始文件内容并对其进行操作进入有效的.mp4。我怀疑Final Cut Pro无法做到这一点,但可能有一些工具可以,例如YAMB


视频的原始大小为640 x 480.我的导出设置为1280x 720.那时文件高达1.5GB。当我改为ex设置为640 x 480时,结果是它应该是大约300MB
愤怒的奇异果

0

假设MP4剪辑具有所有相同的设置(帧大小,比特率​​等)并使用h264视频和AAC音频,可以使用ffmpeg在命令行上完成。

这样做简单但效率低下:

ffmpeg -i input0.mp4 -c copy -bsf h264_mp4toannexb temp0.ts
ffmpeg -i input1.mp4 -c copy -bsf h264_mp4toannexb temp1.ts
ffmpeg -i "concat:temp0.ts|temp1.ts" -c copy -absf aac_adtstoasc output.mp4

稍微复杂一点的方法,不需要创建中间文件:

mkfifo temp1 temp2
ffmpeg -i input1.mp4 -c copy -bsf h264_mp4toannexb -f mpegts temp1 2> /dev/null & \
ffmpeg -i input2.mp4 -c copy -bsf h264_mp4toannexb -f mpegts temp2 2> /dev/null & \
ffmpeg -f mpegts -i "concat:temp1|temp2" -c copy -absf aac_asdstoacs output.mp4

这些中的任何一个都是完全无损的。

我注意到您已根据该评论使用正确的设置解决了您的FCP特定问题...

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.