我在 Windows x64 上使用 FFmpeg 将 MP3 文件转换为 AAC。
我尝试了以下命令:
ffmpeg -i file.mp3 -acodec aac -strict -2 file.aac
ffmpeg -i file.mp3 -c:a libvo_aacenc file.aac
两个命令都会导致文件大小增加。输出文件比源文件大约大 50% file.mp3
;第二个命令比第一个命令增加的大小更多。
这是最好的了吗或者是否有任何选项可以转换为更小的尺寸而不会损失质量?
答案1
file.acc
比源文件 .mp3 大 50%。可以吗?
如果您不选择质量或比特率,则将使用默认选项设置。对于aac
和libvo_aacenc
编码器,这将导致 ffmpeg 自动使用-b:a 128k
。由于这些编码器仅接受比特率而不是质量级别,因此您必须将比特率值调高或调低以获得所需的输出质量或文件大小。或者,根据您的 ffmpeg 版本,您可以使用另一个 AAC 编码器,例如libfdk_aac
或libfaac
,它允许您使用选项定位特定质量-q:a
。
或者是否有任何选项可以转换为较小的尺寸而不会损失质量?
从技术上讲,不是。这是因为您要从一种有损格式转换为另一种有损格式。一般建议避免重新编码。根据您的需要,如果您必须重新编码,那么目标通常是使用足够好的质量,希望您不会注意到变化。如果文件大小很重要,那么您必须在质量和文件大小之间找到一个良好的平衡。质量是主观的,所以我无法确切地告诉您什么对您有用,但您可以在 ffmpeg 支持的每个 AAC 编码器中找到一些有用的信息和示例FFmpeg 和 AAC 编码指南。