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
class. AudioSystem
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:
-
AudioFormat
,FormatConversionProvider
Fields
Modifier and Type | Field and Description |
---|---|
static AudioFormat.Encoding |
ALAW Specifies a-law encoded data. |
static AudioFormat.Encoding |
PCM_FLOAT Specifies floating-point PCM data. |
static AudioFormat.Encoding |
PCM_SIGNED Specifies signed, linear PCM data. |
static AudioFormat.Encoding |
PCM_UNSIGNED Specifies unsigned, linear PCM data. |
static AudioFormat.Encoding |
ULAW Specifies u-law encoded data. |
Constructors
Constructor and Description |
---|
Encoding(String name) Constructs a new encoding. |
Methods
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) Finalizes the equals method |
int |
hashCode() Finalizes the hashCode method |
String |
toString() Provides the |
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Fields
PCM_SIGNED
public static final AudioFormat.Encoding PCM_SIGNED
Specifies signed, linear PCM data.
PCM_UNSIGNED
public static final AudioFormat.Encoding PCM_UNSIGNED
Specifies unsigned, linear PCM data.
PCM_FLOAT
public static final AudioFormat.Encoding PCM_FLOAT
Specifies floating-point PCM data.
- Since:
- 1.7
ULAW
public static final AudioFormat.Encoding ULAW
Specifies u-law encoded data.
ALAW
public static final AudioFormat.Encoding ALAW
Specifies a-law encoded data.
Constructors
Encoding
public Encoding(String name)
Constructs a new encoding.
- Parameters:
-
name
- the name of the new type of encoding
Methods
equals
public final boolean equals(Object obj)
Finalizes the equals method
- Overrides:
-
equals
in classObject
- Parameters:
-
obj
- the reference object with which to compare. - Returns:
-
true
if this object is the same as the obj argument;false
otherwise. - See Also:
-
Object.hashCode()
,HashMap
hashCode
public final int hashCode()
Finalizes the hashCode method
- Overrides:
-
hashCode
in classObject
- Returns:
- a hash code value for this object.
- See Also:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
toString
public final String toString()
Provides the String
representation of the encoding. This String
is the same name that was passed to the constructor. 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".
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/javax/sound/sampled/AudioFormat.Encoding.html