我想增加一些 MP3 文件的音量。有没有办法以无损方式做到这一点(无需重新压缩 MP3 文件,从而降低其质量)?
答案1
是的。你可以这样做。许多程序都使用了这项技术,级别由一种名为 ReplayGain 的算法计算。Mp3音量数据可以无损地调整,就像 JPEG 图片可以无损地旋转一样。
有两种方法
- 计算文件的音量并添加新标签,让兼容程序动态调整音量
- 计算音量级别并调整 mp3 数据中的乘数级别。
从氢音频:实现:
在元数据方法中,可以存储两种类型的 ReplayGain(音轨增益和专辑增益)的信息。音量变化信息可以非常精确。如果音频数据也发生了变化,元数据可以包含“撤消”信息。并非所有音频播放器/解码器都知道如何读取和使用存储在元数据中的 ReplayGain 信息。并且,ReplayGain 信息的存储位置和方式没有标准;每个实现都使用不同的格式并将信息放在不同的位置。
在音频数据方法中,文件的实际音频数据被修改,以便其自然/默认播放音量达到目标水平。在这种情况下,只能应用一种类型的 ReplayGain(曲目增益或专辑增益)。如果某处没有保存“撤销”信息,则可能无法恢复原始音频数据。音频文件格式的限制可能会阻止使用此方法进行精确(精细调整)的增益调整。例如,MP3 和 AAC 文件只能以 1.5 dB 的步长进行无损修改。根据音频文件格式,该过程也可能是有损的,因为它可能会不可逆地将信号推到格式的最大振幅之上(导致削波)或最小振幅之下(导致静音)。
第二种方法做修改文件,但由于底层数据没有被修改,因此不会损失质量,因此可以无损地进行调整。一般不建议将其用于主要收藏,因为它会修改文件的原始状态,但对于便携式媒体播放器来说,它非常有用。
一个名为mp3增益可以执行第二个选项,可逆地调整 mp3 的音量。它绝对不会重新编码,只需调整 mp3 文件本身的幅度值即可更改音量。从HydrogenAudio: 重放增益
如果修改增益,它总是修改全局增益场在 MP3 音频数据中。它可以添加一些精确的元数据,包括撤消信息
由于 mp3 文件的编码方式,调整限制为 1.5dB 步骤,这通常足以接近。
Foobar2k 也包括此功能并可以将更改应用到文件。
答案2
我认为,Replaygain 是没有答案这个问题。它不会增加内容的音量,只是添加一个标签来告诉播放器(仅支持该标签的播放器)在播放时自行调整音量。特别是,它与所有播放器都不兼容,并且不适合所有 mp3 用途(例如将它们串联成单个流等)。
另一方面,理论上可以缩放所有 DCT 系数而无需解码和重新编码(即无需反转量化和 DCT 然后重新执行它们),只需重新执行 Huffman 编码(无损)。当我在 MPlayer 上工作时,我相信有人有一个实用程序可以做到这一点,但我记不起它的名字了。
答案3
是的,它被称为回放增益,原理很简单,而且效果很好。基本上,软件会“聆听”您的音轨,并确定需要放大多少才能听起来“正常”。信息写在 mp3tag 中,与数据分开。
然后兼容的播放器会使用该数据自动放大音量,以使所有曲目都以相同的音量重现。我建议尝试http://www.foobar2000.org/进行本练习。通过右键单击轨道,您可以扫描它,并且在程序设置中,您需要设置使用重放增益信息。
答案4
下载 Audacity(免费应用程序)后https://sourceforge.net/projects/audacity/,选择文件/导入/音频,导航到您的 mp3 文件,单击它并选择打开。您将看到一个双通道波形。
从顶部的下拉菜单中单击编辑/选择/全部。选择文件后,从顶部的下拉列表中选择效果,然后选择标准化。只需在打开的窗口中单击“确定”即可。默认设置通常就足够了。单击可见单选按钮中的绿色播放三角形以测试您编辑的文件。您可以使用许多其他效果,例如均衡、放大、低音和高音等。对结果满意后,选择文件/导出音频并选择您喜欢的“保存类型”,通常是 .WAV 或 .MP3。
我必须对收到的许多弱文件执行此操作。