/**
* wav语音文件合成
* @param srcFile1 源文件1
* @param srcFile2 源文件2
* @param descFile 目标文件
* @throws IOException
* @throws UnsupportedAudioFileException
*/
public static void mergeFile(File srcFile1, File srcFile2, File descFile) throws IOException,UnsupportedAudioFileException {
AudioFileFormat aff = AudioSystem.getAudioFileFormat(srcFile1);
AudioInputStream ais1 = AudioSystem.getAudioInputStream(srcFile1);
AudioInputStream ais2 = AudioSystem.getAudioInputStream(srcFile2);
SequenceInputStream sis = new SequenceInputStream(ais1, ais2);
AudioSystem.write(new AudioInputStream(sis, aff.getFormat(), ais1.getFrameLength()
+ ais2.getFrameLength()), aff.getType(), descFile);
if (ais1 != null)
ais1.close();
if (ais2 != null)
ais2.close();
if (sis != null)
sis.close();
* wav语音文件合成
* @param srcFile1 源文件1
* @param srcFile2 源文件2
* @param descFile 目标文件
* @throws IOException
* @throws UnsupportedAudioFileException
*/
public static void mergeFile(File srcFile1, File srcFile2, File descFile) throws IOException,UnsupportedAudioFileException {
AudioFileFormat aff = AudioSystem.getAudioFileFormat(srcFile1);
AudioInputStream ais1 = AudioSystem.getAudioInputStream(srcFile1);
AudioInputStream ais2 = AudioSystem.getAudioInputStream(srcFile2);
SequenceInputStream sis = new SequenceInputStream(ais1, ais2);
AudioSystem.write(new AudioInputStream(sis, aff.getFormat(), ais1.getFrameLength()
+ ais2.getFrameLength()), aff.getType(), descFile);
if (ais1 != null)
ais1.close();
if (ais2 != null)
ais2.close();
if (sis != null)
sis.close();
}
这个方法好像是没有合并文件头,我自己用的时候必须每合并一次生成一个新的wav文件才能使用。