Java 如何将两个wav文件合并成一个wav文件?
如何使用java合并两个wav文件Java 如何将两个wav文件合并成一个wav文件?,java,audio,Java,Audio,如何使用java合并两个wav文件 我试过了,但没有成功,他们还有别的办法吗 Merge意味着混合,但听起来你这里指的是串联 将中间的沉默连接到文件中,需要插入多个沉默框。静默帧是指每个通道都有一个“0”-如果使用有符号采样,这实际上是一个0,对于无符号,它是maxvalue/2 每个帧将为每个通道提供一个样本。因此,要生成CD格式的1秒静默,需要插入44100(hz)*2(每帧通道)=88200个16位有符号整数,每个整数的值为0。我不知道如何访问由Java音频摘要提取的原始文件,但这就是要插
我试过了,但没有成功,他们还有别的办法吗 Merge意味着混合,但听起来你这里指的是串联 <>将中间的沉默连接到文件中,需要插入多个沉默框。静默帧是指每个通道都有一个“0”-如果使用有符号采样,这实际上是一个0,对于无符号,它是maxvalue/2
每个帧将为每个通道提供一个样本。因此,要生成CD格式的1秒静默,需要插入44100(hz)*2(每帧通道)=88200个16位有符号整数,每个整数的值为0。我不知道如何访问由Java音频摘要提取的原始文件,但这就是要插入的数据。如果您直接处理wav文件的字节,您可以在任何编程语言中使用相同的策略。对于本例,我将假设两个源文件具有相同的比特率/numchannels,并且具有相同的长度/大小。 (如果没有,您可能可以在开始合并之前编辑它们) 首先查看wav规范,我在课程网站上找到了一个很好的规范: 常用标头长度为44或46字节 如果要连接两个文件(即在单个文件中播放一个wav,然后播放另一个wav):
它是如何工作不正常的?出什么问题了?结果文件太短了。您需要考虑的是,我试图合并的文件的每一个文件需要1秒甚至更少。也许这就是原因。那么每个文件的长度是1秒还是更短?那么歌曲的最大长度是2秒?我想我知道问题出在哪里了。如何在这两个文件之间添加1秒(或更长)的空音频?嗨,Thamster,我想合并两个wav文件。我这样做了,但合并后,我们可以在这里同时播放两首歌曲,也可以播放歌曲噪音。请帮助我…int a=buffer_1[I]/2;int b=缓冲区2[i]/2;int c=(a+b);datafinal[i]=(字节)c;谢谢你的解决方案。如果不除以2,我会对将来可能遇到这种情况的人产生扭曲。我为一个16位PCM文件分别添加每个字节。