MP3Decoder decoder = new MP3Decoder(); channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); sampleRate = header.getSampleRate(); decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
public Music (OpenALAudio audio, FileHandle file) { super(audio, file); if (audio.noDevice) return; bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); bufferOverhead = 4096; try { Header header = bitstream.readFrame(); if (header == null) throw new GdxRuntimeException("Empty MP3"); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); } catch (BitstreamException e) { throw new GdxRuntimeException("error while preloading mp3", e); } }
/** * Decodes one frame from an MPEG audio bitstream. * * @param header The header describing the frame to decode. * @param bitstream The bistream that provides the bits for te body of the frame. * * @return A SampleBuffer containing the decoded samples. */ public OutputBuffer decodeFrame (Header header, Bitstream stream) throws DecoderException { if (!initialized) initialize(header); int layer = header.layer(); FrameDecoder decoder = retrieveDecoder(header, stream, layer); decoder.decodeFrame(); return output; }
protected FrameDecoder retrieveDecoder (Header header, Bitstream stream, int layer) throws DecoderException { FrameDecoder decoder = null; // REVIEW: allow channel output selection type // (LEFT, RIGHT, BOTH, DOWNMIX) switch (layer) { case 3: if (l3decoder == null) l3decoder = new LayerIIIDecoder(stream, header, filter1, filter2, output, OutputChannels.BOTH_CHANNELS); decoder = l3decoder; break; case 2: if (l2decoder == null) { l2decoder = new LayerIIDecoder(); l2decoder.create(stream, header, filter1, filter2, output, OutputChannels.BOTH_CHANNELS); } decoder = l2decoder; break; case 1: if (l1decoder == null) { l1decoder = new LayerIDecoder(); l1decoder.create(stream, header, filter1, filter2, output, OutputChannels.BOTH_CHANNELS); } decoder = l1decoder; break; } if (decoder == null) throw newDecoderException(UNSUPPORTED_LAYER, null); return decoder; }
public Music (OpenALAudio audio, FileHandle file) { super(audio, file); if (audio.noDevice) return; bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); bufferOverhead = 4096; try { Header header = bitstream.readFrame(); if (header == null) throw new GdxRuntimeException("Empty MP3"); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); } catch (BitstreamException e) { throw new GdxRuntimeException("error while preloading mp3", e); } }
MP3Decoder decoder = new MP3Decoder(); channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); sampleRate = header.getSampleRate(); decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
public Music (OpenALAudio audio, FileHandle file) { super(audio, file); if (audio.noDevice) return; bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); bufferOverhead = 4096; try { Header header = bitstream.readFrame(); if (header == null) throw new GdxRuntimeException("Empty MP3"); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); } catch (BitstreamException e) { throw new GdxRuntimeException("error while preloading mp3", e); } }
MP3Decoder decoder = new MP3Decoder(); channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); sampleRate = header.getSampleRate(); decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
public Music (OpenALAudio audio, FileHandle file) { super(audio, file); if (audio.noDevice) return; bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); bufferOverhead = 4096; try { Header header = bitstream.readFrame(); if (header == null) throw new GdxRuntimeException("Empty MP3"); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); } catch (BitstreamException e) { throw new GdxRuntimeException("error while preloading mp3", e); } }
MP3Decoder decoder = new MP3Decoder(); channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); sampleRate = header.getSampleRate(); decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
public Music (OpenALAudio audio, FileHandle file) { super(audio, file); if (audio.noDevice) return; bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); bufferOverhead = 4096; try { Header header = bitstream.readFrame(); if (header == null) throw new GdxRuntimeException("Empty MP3"); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); } catch (BitstreamException e) { throw new GdxRuntimeException("error while preloading mp3", e); } }
if (setup) { bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); setup = false; decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
public Music (OpenALAudio audio, FileHandle file) { super(audio, file); if (audio.noDevice) return; bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); bufferOverhead = 4096; try { Header header = bitstream.readFrame(); if (header == null) throw new GdxRuntimeException("Empty MP3"); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); } catch (BitstreamException e) { throw new GdxRuntimeException("error while preloading mp3", e); } }
if (setup) { bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); setup = false; decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
public Music (Mini2DxOpenALAudio audio, FileHandle file) { super(audio, file); if (audio.noDevice) return; bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); bufferOverhead = 4096; try { Header header = bitstream.readFrame(); if (header == null) throw new GdxRuntimeException("Empty MP3"); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); } catch (BitstreamException e) { throw new GdxRuntimeException("error while preloading mp3", e); } }
if (setup) { bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); setup = false; decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
if (setup) { bitstream = new Bitstream(file.read()); decoder = new MP3Decoder(); int channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); setup(channels, header.getSampleRate()); setup = false; decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
MP3Decoder decoder = new MP3Decoder(); channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); sampleRate = header.getSampleRate(); decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
MP3Decoder decoder = new MP3Decoder(); channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); sampleRate = header.getSampleRate(); decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {
MP3Decoder decoder = new MP3Decoder(); channels = header.mode() == Header.SINGLE_CHANNEL ? 1 : 2; outputBuffer = new OutputBuffer(channels, false); decoder.setOutputBuffer(outputBuffer); sampleRate = header.getSampleRate(); decoder.decodeFrame(header, bitstream); } catch (Exception ignored) {