package jass.render; import java.io.*; import javax.sound.sampled.*; /** Convert raw audio file to .wav. A raw file is basically a wav file without header. @author Kees van den Doel (kvdoel@cs.ubc.ca) */ public class ConvertRawToWav { public static void convertRawToWav(double srate,String fn) throws Exception { String fnout = fn+".wav"; FileInputStream inStream = new FileInputStream(new File(fn)); File out = new File(fnout); int bytesAvailable = inStream.available(); int sampleSizeInBits = 16; int channels = 1; boolean signed = false; boolean bigEndian = false; AudioFormat audioFormat = new AudioFormat((float)srate, sampleSizeInBits, channels, signed, bigEndian); AudioInputStream audioInputStream = new AudioInputStream(inStream,audioFormat,bytesAvailable/2); AudioSystem.write(audioInputStream, AudioFileFormat.Type.WAVE, out); audioInputStream.close(); inStream.close(); } public static void main (String args[]) throws Exception { double srate = 44100.; srate = Double.parseDouble(args[1]); String fn = args[0]; convertRawToWav(srate,fn); } }