Class AudioFormat.Encoding

java.lang.Object
javax.sound.sampled.AudioFormat.Encoding
Enclosing class:
AudioFormat

public static class AudioFormat.Encoding extends Object
The Encoding class names the specific type of data representation used for an audio stream. The encoding includes aspects of the sound format other than the number of channels, sample rate, sample size, frame rate, frame size, and byte order.

One ubiquitous type of audio encoding is pulse-code modulation (PCM), which is simply a linear (proportional) representation of the sound waveform. With PCM, the number stored in each sample is proportional to the instantaneous amplitude of the sound pressure at that point in time. The numbers may be signed or unsigned integers or floats. Besides PCM, other encodings include mu-law and a-law, which are nonlinear mappings of the sound amplitude that are often used for recording speech.

You can use a predefined encoding by referring to one of the static objects created by this class, such as PCM_SIGNED or PCM_UNSIGNED. Service providers can create new encodings, such as compressed audio formats, and make these available through the AudioSystem class.

The Encoding class is static, so that all AudioFormat objects that have the same encoding will refer to the same object (rather than different instances of the same class). This allows matches to be made by checking that two format's encodings are equal.

Since:
1.3
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    Specifies a-law encoded data.
    Specifies floating-point PCM data.
    Specifies signed, linear PCM data.
    Specifies unsigned, linear PCM data.
    Specifies u-law encoded data.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new encoding.
  • Method Summary

    Modifier and Type
    Method
    Description
    final boolean
    Indicates whether the specified object is equal to this encoding, returning true if the objects are equal.
    final int
    Returns a hash code value for this encoding.
    final String
    Returns encoding's name as the string representation of the encoding.

    Methods declared in class Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Field Details

  • Constructor Details

    • Encoding

      public Encoding(String name)
      Constructs a new encoding.
      Parameters:
      name - the name of the new type of encoding
  • Method Details

    • equals

      public final boolean equals(Object obj)
      Indicates whether the specified object is equal to this encoding, returning true if the objects are equal.
      Overrides:
      equals in class Object
      Parameters:
      obj - the reference object with which to compare
      Returns:
      true if the specified object is equal to this encoding; false otherwise
      See Also:
    • hashCode

      public final int hashCode()
      Returns a hash code value for this encoding.
      Overrides:
      hashCode in class Object
      Returns:
      a hash code value for this encoding
      See Also:
    • toString

      public final String toString()
      Returns encoding's name as the string representation of the encoding. For the predefined encodings, the name is similar to the encoding's variable (field) name. For example, PCM_SIGNED.toString() returns the name "PCM_SIGNED".
      Overrides:
      toString in class Object
      Returns:
      a string representation of the encoding