package micromod.output.converters; /** Signed, Stereo, 16 bit, Little Endian like most IBM-PC soundcards */ public class SS16LEAudioFormatConverter implements AudioFormatConverter { public int getBytesPerFrame() { return 4; } public int getNumberOfChannels() { return 2; } public boolean isSigned() { return true; } public boolean isBigEndian() { return false; } public void convert( short[] left, short[] right, int position, byte[] output, int length ) { int leftSample, rightSample, counter=0; length+=position; for ( int i=position; i<length; i++ ) { leftSample = left[i]; rightSample = right[i]; output[counter++] = (byte)(leftSample & 0xFF ); output[counter++] = (byte)(leftSample >> 8 ); output[counter++] = (byte)(rightSample & 0xFF); output[counter++] = (byte)(rightSample >> 8); } } }