org.jaudiotagger.audio.ogg.util
Class VorbisIdentificationHeader

java.lang.Object
  extended by org.jaudiotagger.audio.ogg.util.VorbisIdentificationHeader
All Implemented Interfaces:
VorbisHeader

public class VorbisIdentificationHeader
extends java.lang.Object
implements VorbisHeader

Vorbis Identification header From http://xiph.org/vorbis/doc/Vorbis_I_spec.html#id326710 The identification header is a short header of only a few fields used to declare the stream definitively as Vorbis, and provide a few externally relevant pieces of information about the audio stream. The identification header is coded as follows: 1) [vorbis_version] = read 32 bits as unsigned integer 2) [audio_channels] = read 8 bit integer as unsigned 3) [audio_sample_rate] = read 32 bits as unsigned integer 4) [bitrate_maximum] = read 32 bits as signed integer 5) [bitrate_nominal] = read 32 bits as signed integer 6) [bitrate_minimum] = read 32 bits as signed integer 7) [blocksize_0] = 2 exponent (read 4 bits as unsigned integer) 8) [blocksize_1] = 2 exponent (read 4 bits as unsigned integer) 9) [framing_flag] = read one bit $Id: VorbisIdentificationHeader.java,v 1.5 2007/11/27 17:03:32 paultaylor Exp $

Version:
16 d�cembre 2003
Author:
Raphael Slinckx (KiKiDonK)

Field Summary
static int FIELD_AUDIO_CHANNELS_LENGTH
           
static int FIELD_AUDIO_CHANNELS_POS
           
static int FIELD_AUDIO_SAMPLE_RATE_LENGTH
           
static int FIELD_AUDIO_SAMPLE_RATE_POS
           
static int FIELD_BITRATE_MAX_LENGTH
           
static int FIELD_BITRATE_MAX_POS
           
static int FIELD_BITRATE_MIN_LENGTH
           
static int FIELD_BITRATE_MIN_POS
           
static int FIELD_BITRATE_NOMAIML_LENGTH
           
static int FIELD_BITRATE_NOMAIML_POS
           
static int FIELD_BLOCKSIZE_LENGTH
           
static int FIELD_BLOCKSIZE_POS
           
static int FIELD_FRAMING_FLAG_LENGTH
           
static int FIELD_FRAMING_FLAG_POS
           
static int FIELD_VORBIS_VERSION_LENGTH
           
static int FIELD_VORBIS_VERSION_POS
           
static java.util.logging.Logger logger
           
 
Fields inherited from interface org.jaudiotagger.audio.ogg.util.VorbisHeader
CAPTURE_PATTERN, CAPTURE_PATTERN_AS_BYTES, CHARSET_UTF_8, FIELD_CAPTURE_PATTERN_LENGTH, FIELD_CAPTURE_PATTERN_POS, FIELD_PACKET_TYPE_LENGTH, FIELD_PACKET_TYPE_POS
 
Constructor Summary
VorbisIdentificationHeader(byte[] vorbisData)
           
 
Method Summary
 void decodeHeader(byte[] b)
           
 int getChannelNumber()
           
 java.lang.String getEncodingType()
           
 int getMaxBitrate()
           
 int getMinBitrate()
           
 int getNominalBitrate()
           
 int getSamplingRate()
           
 boolean isValid()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

public static java.util.logging.Logger logger

FIELD_VORBIS_VERSION_POS

public static final int FIELD_VORBIS_VERSION_POS
See Also:
Constant Field Values

FIELD_AUDIO_CHANNELS_POS

public static final int FIELD_AUDIO_CHANNELS_POS
See Also:
Constant Field Values

FIELD_AUDIO_SAMPLE_RATE_POS

public static final int FIELD_AUDIO_SAMPLE_RATE_POS
See Also:
Constant Field Values

FIELD_BITRATE_MAX_POS

public static final int FIELD_BITRATE_MAX_POS
See Also:
Constant Field Values

FIELD_BITRATE_NOMAIML_POS

public static final int FIELD_BITRATE_NOMAIML_POS
See Also:
Constant Field Values

FIELD_BITRATE_MIN_POS

public static final int FIELD_BITRATE_MIN_POS
See Also:
Constant Field Values

FIELD_BLOCKSIZE_POS

public static final int FIELD_BLOCKSIZE_POS
See Also:
Constant Field Values

FIELD_FRAMING_FLAG_POS

public static final int FIELD_FRAMING_FLAG_POS
See Also:
Constant Field Values

FIELD_VORBIS_VERSION_LENGTH

public static final int FIELD_VORBIS_VERSION_LENGTH
See Also:
Constant Field Values

FIELD_AUDIO_CHANNELS_LENGTH

public static final int FIELD_AUDIO_CHANNELS_LENGTH
See Also:
Constant Field Values

FIELD_AUDIO_SAMPLE_RATE_LENGTH

public static final int FIELD_AUDIO_SAMPLE_RATE_LENGTH
See Also:
Constant Field Values

FIELD_BITRATE_MAX_LENGTH

public static final int FIELD_BITRATE_MAX_LENGTH
See Also:
Constant Field Values

FIELD_BITRATE_NOMAIML_LENGTH

public static final int FIELD_BITRATE_NOMAIML_LENGTH
See Also:
Constant Field Values

FIELD_BITRATE_MIN_LENGTH

public static final int FIELD_BITRATE_MIN_LENGTH
See Also:
Constant Field Values

FIELD_BLOCKSIZE_LENGTH

public static final int FIELD_BLOCKSIZE_LENGTH
See Also:
Constant Field Values

FIELD_FRAMING_FLAG_LENGTH

public static final int FIELD_FRAMING_FLAG_LENGTH
See Also:
Constant Field Values
Constructor Detail

VorbisIdentificationHeader

public VorbisIdentificationHeader(byte[] vorbisData)
Method Detail

getChannelNumber

public int getChannelNumber()

getEncodingType

public java.lang.String getEncodingType()

getSamplingRate

public int getSamplingRate()

getNominalBitrate

public int getNominalBitrate()

getMaxBitrate

public int getMaxBitrate()

getMinBitrate

public int getMinBitrate()

isValid

public boolean isValid()

decodeHeader

public void decodeHeader(byte[] b)