更改音频文件的音量并使用java.sound.sampled保存文件

时间:2010-07-12 06:15:11

标签: java audio

我想更改音频文件的音量 并使用java.sound.sampled保存新文件。

我尝试使用调音台来创建源代码行 从给定的文件和目标行到新文件。 这样我就可以更改调音台设置来改变音量。 但声音正在播放给系统扬声器。 我是否正确思考? 有没有其他方法可以从一行录制文件?

代码可用here 我得到的解决方案是www.jsresources.org/examples/AmplitudeConverter.html。  但是可以在java.sound.sampled中完成相同的操作 不使用外部库。

1 个答案:

答案 0 :(得分:0)

要更改音量,如果不使用“控制”(参见Java声音教程),可以选择直接修改样本本身。

在最里面的循环中,将最内层缓冲区中的字节转换为样本(如果是WAV 16位编码,则需要将两个字节放在一起以生成单个SHORT值),然后将该值乘以一个范围从0到1的浮点数,其中0表示最安静,1表示声音为满音量。然后取结果并将其分解为两个字节并传递它。

您需要代码才能执行此操作吗?这里还有其他一些帖子,人们可以从字节转换为INT或Float并返回。

嗯。这个问题很老了。好吧,也许我的回答可以帮助新问题。