Class TarsosDSPAudioFormat.Encoding
- Enclosing class:
- TarsosDSPAudioFormat
public static class TarsosDSPAudioFormat.Encoding
extends java.lang.Object
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 are frequently signed or unsigned integers. 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 or floating-point PCM samples, 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
- Author:
- Kara Kytle
-
Field Summary
Fields Modifier and Type Field Description static TarsosDSPAudioFormat.Encoding
ALAW
Specifies a-law encoded data.static TarsosDSPAudioFormat.Encoding
PCM_SIGNED
Specifies signed, linear PCM data.static TarsosDSPAudioFormat.Encoding
PCM_UNSIGNED
Specifies unsigned, linear PCM data.static TarsosDSPAudioFormat.Encoding
ULAW
Specifies u-law encoded data. -
Constructor Summary
Constructors Constructor Description Encoding(java.lang.String name)
Constructs a new encoding. -
Method Summary
-
Field Details
-
PCM_SIGNED
Specifies signed, linear PCM data. -
PCM_UNSIGNED
Specifies unsigned, linear PCM data. -
ULAW
Specifies u-law encoded data. -
ALAW
Specifies a-law encoded data.
-
-
Constructor Details
-
Encoding
public Encoding(java.lang.String name)Constructs a new encoding.- Parameters:
name
- the name of the new type of encoding
-
-
Method Details
-
equals
public final boolean equals(java.lang.Object obj)Finalizes the equals method- Overrides:
equals
in classjava.lang.Object
-
hashCode
public final int hashCode()Finalizes the hashCode method- Overrides:
hashCode
in classjava.lang.Object
-
toString
public final java.lang.String toString()Provides theString
representation of the encoding. ThisString
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".- Overrides:
toString
in classjava.lang.Object
- Returns:
- the encoding name
-