mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-12 08:37:25 -05:00
86 lines
2.7 KiB
Java
86 lines
2.7 KiB
Java
package audio;
|
|
|
|
import javax.sound.sampled.AudioFormat;
|
|
import javax.sound.sampled.DataLine;
|
|
import javax.sound.sampled.Line;
|
|
import javax.sound.sampled.SourceDataLine;
|
|
|
|
public class AudioFormats
|
|
{
|
|
public static final AudioFormat.Encoding IMBE_ENCODING =
|
|
new AudioFormat.Encoding( "IMBE" );
|
|
|
|
public static final boolean LITTLE_ENDIAN = false;
|
|
public static final boolean BIG_ENDIAN = true;
|
|
|
|
public static final float IMBE_FRAME_RATE = 50;
|
|
public static final float IMBE_SAMPLE_RATE = 50;
|
|
public static final float PCM_8KHZ_RATE = 8000;
|
|
public static final float PCM_48KHZ_RATE = 48000;
|
|
|
|
public static final int IMBE_FRAME_SIZE_BYTES = 18;
|
|
public static final int IMBE_SAMPLE_SIZE_BITS = 144;
|
|
public static final int ONE_CHANNEL = 1;
|
|
public static final int TWO_CHANNELS = 2;
|
|
public static final int PCM_SAMPLE_SIZE_BITS = 16;
|
|
public static final int PCM_FRAME_SIZE_BYTES_MONO = 2;
|
|
public static final int PCM_FRAME_SIZE_BYTES_STEREO = 4;
|
|
|
|
public static AudioFormat IMBE_AUDIO_FORMAT =
|
|
new AudioFormat( IMBE_ENCODING,
|
|
IMBE_SAMPLE_RATE,
|
|
IMBE_SAMPLE_SIZE_BITS,
|
|
ONE_CHANNEL,
|
|
IMBE_FRAME_SIZE_BYTES,
|
|
IMBE_FRAME_RATE,
|
|
LITTLE_ENDIAN );
|
|
|
|
public static AudioFormat PCM_SIGNED_8KHZ_16BITS_MONO =
|
|
new AudioFormat( AudioFormat.Encoding.PCM_SIGNED,
|
|
PCM_8KHZ_RATE,
|
|
PCM_SAMPLE_SIZE_BITS,
|
|
ONE_CHANNEL,
|
|
PCM_FRAME_SIZE_BYTES_MONO,
|
|
PCM_8KHZ_RATE,
|
|
LITTLE_ENDIAN );
|
|
|
|
public static AudioFormat PCM_SIGNED_8KHZ_16BITS_STEREO =
|
|
new AudioFormat( AudioFormat.Encoding.PCM_SIGNED,
|
|
PCM_8KHZ_RATE,
|
|
PCM_SAMPLE_SIZE_BITS,
|
|
TWO_CHANNELS,
|
|
PCM_FRAME_SIZE_BYTES_STEREO,
|
|
PCM_8KHZ_RATE,
|
|
LITTLE_ENDIAN );
|
|
|
|
public static AudioFormat PCM_SIGNED_48KHZ_16BITS_MONO =
|
|
new AudioFormat( AudioFormat.Encoding.PCM_SIGNED,
|
|
PCM_48KHZ_RATE,
|
|
PCM_SAMPLE_SIZE_BITS,
|
|
ONE_CHANNEL,
|
|
PCM_FRAME_SIZE_BYTES_MONO,
|
|
PCM_48KHZ_RATE,
|
|
LITTLE_ENDIAN );
|
|
|
|
public static AudioFormat PCM_SIGNED_48KHZ_16BITS_STEREO =
|
|
new AudioFormat( AudioFormat.Encoding.PCM_SIGNED,
|
|
PCM_48KHZ_RATE,
|
|
PCM_SAMPLE_SIZE_BITS,
|
|
TWO_CHANNELS,
|
|
PCM_FRAME_SIZE_BYTES_STEREO,
|
|
PCM_48KHZ_RATE,
|
|
LITTLE_ENDIAN );
|
|
|
|
/**
|
|
* Source Data Line Info for a 48 kHz, 16-bits signed PCM one channel
|
|
*/
|
|
public static final Line.Info MONO_SOURCE_DATALINE_INFO =
|
|
new DataLine.Info( SourceDataLine.class, PCM_SIGNED_8KHZ_16BITS_MONO);
|
|
|
|
/**
|
|
* Source Data Line Info for a 48 kHz, 16-bits signed PCM two channels
|
|
*/
|
|
public static final Line.Info STEREO_SOURCE_DATALINE_INFO =
|
|
new DataLine.Info( SourceDataLine.class, PCM_SIGNED_8KHZ_16BITS_STEREO);
|
|
}
|