PackageCom.audioprocessingbox.myfunc;ImportJava.io.File;Importjava.io.IOException;Importjavax.sound.sampled.UnsupportedAudioFileException;ImportCom.audioprocessingbox.utils.WavFile;Importcom.audioprocessingbox.utils.WavFileException; Public classAppcombfiles {Private Static Final LongSamplerate = 16000; Public Static voidMain (string[] arg)throwsunsupportedaudiofileexception {Try { int[] Postbuffer =New int[0], Newbuffer =New int[0], buffer; Wavfile Wavfile; for(inti = 103; I < 111; i++) {Wavfile= Wavfile.openwavfile (NewFile ("/users/karl/work/database/speaker/certainspeaker/" + i + ". wav")); if(Samplerate! =wavfile.getsamplerate ()) { Throw NewIllegalArgumentException ("The different than Recognito ' +" Defi Ned Sample rate: ["+ wavfile.getsamplerate () +"] "); } //Read wav data into int array intNframes = (int) Wavfile.getnumframes (); Buffer=New int[Nframes]; Wavfile.readframes (buffer, nframes); Wavfile.close (); //Combine an int arrayNewbuffer =New int[Postbuffer.length +Buffer.length]; System.arraycopy (Postbuffer,0, Newbuffer, 0, postbuffer.length); System.arraycopy (Buffer,0, Newbuffer, Postbuffer.length, buffer.length); Postbuffer=New int[Postbuffer.length +Buffer.length]; Postbuffer=Newbuffer; } wavfile saveFile= Wavfile.newwavfile (NewFile ("/users/karl/work/javawork/combine.wav"), 1, Postbuffer.length, 16, samplerate); Savefile.writeframes (Postbuffer, postbuffer.length); Savefile.close (); System.out.println (Postbuffer.length/samplerate); } Catch(IOException e) {//TODO auto-generated Catch blockE.printstacktrace (); } Catch(wavfileexception e) {//TODO auto-generated Catch blockE.printstacktrace (); } }}
[Audio processing] WAV audio file merge