Class Decoder

java.lang.Object
javazoom.jl.decoder.Decoder
All Implemented Interfaces:
DecoderErrors, JavaLayerErrors

public class Decoder extends Object implements DecoderErrors
The Decoder class encapsulates the details of decoding an MPEG audio frame.
Since:
0.0.5
Version:
0.0.7 12/12/99
  • Constructor Details

    • Decoder

      public Decoder()
      Creates a new Decoder instance with default parameters.
    • Decoder

      public Decoder(Decoder.Params params0)
      Creates a new Decoder instance with default parameters.
      Parameters:
      params - The Params instance that describes the customizable aspects of the decoder.
  • Method Details

    • getDefaultParams

      public static Decoder.Params getDefaultParams()
    • setEqualizer

      public void setEqualizer(Equalizer eq)
    • decodeFrame

      public Obuffer decodeFrame(Header header, Bitstream stream) throws DecoderException
      Decodes one frame from an MPEG audio bitstream.
      Parameters:
      header - The header describing the frame to decode.
      bitstream - The bistream that provides the bits for te body of the frame.
      Returns:
      A SampleBuffer containing the decoded samples.
      Throws:
      DecoderException
    • setOutputBuffer

      public void setOutputBuffer(Obuffer out)
      Changes the output buffer. This will take effect the next time decodeFrame() is called.
    • getOutputFrequency

      public int getOutputFrequency()
      Retrieves the sample frequency of the PCM samples output by this decoder. This typically corresponds to the sample rate encoded in the MPEG audio stream.
      Parameters:
      the - sample rate (in Hz) of the samples written to the output buffer when decoding.
    • getOutputChannels

      public int getOutputChannels()
      Retrieves the number of channels of PCM samples output by this decoder. This usually corresponds to the number of channels in the MPEG audio stream, although it may differ.
      Returns:
      The number of output channels in the decoded samples: 1 for mono, or 2 for stereo.
    • getOutputBlockSize

      public int getOutputBlockSize()
      Retrieves the maximum number of samples that will be written to the output buffer when one frame is decoded. This can be used to help calculate the size of other buffers whose size is based upon the number of samples written to the output buffer. NB: this is an upper bound and fewer samples may actually be written, depending upon the sample rate and number of channels.
      Returns:
      The maximum number of samples that are written to the output buffer when decoding a single frame of MPEG audio.
    • newDecoderException

      protected DecoderException newDecoderException(int errorcode)
    • newDecoderException

      protected DecoderException newDecoderException(int errorcode, Throwable throwable)
    • retrieveDecoder

      protected FrameDecoder retrieveDecoder(Header header, Bitstream stream, int layer) throws DecoderException
      Throws:
      DecoderException