TagLib 1.11.1 (TagLib::MPEG::Header Class Reference)

TagLib::MPEG::Header Class Reference

An implementation of MP3 frame headers. More...

#include <mpegheader.h>

List of all members.

Public Types

enum  Version { Version1 = 0, Version2 = 1, Version2_5 = 2 }
enum  ChannelMode { Stereo = 0, JointStereo = 1, DualChannel = 2, SingleChannel = 3 }

Public Member Functions

 Header (const ByteVector &data)
 Header (File *file, long offset, bool checkLength=true)
 Header (const Header &h)
virtual ~Header ()
bool isValid () const
Version version () const
int layer () const
bool protectionEnabled () const
int bitrate () const
int sampleRate () const
bool isPadded () const
ChannelMode channelMode () const
bool isCopyrighted () const
bool isOriginal () const
int frameLength () const
int samplesPerFrame () const
Headeroperator= (const Header &h)

Detailed Description

An implementation of MP3 frame headers.

This is an implementation of MPEG Layer III headers. The API follows more or less the binary format of these headers. I've used this document as a reference.


Member Enumeration Documentation

There are a few combinations or one or two channel audio that are possible:

Enumerator:
Stereo 

Stereo.

JointStereo 

Stereo.

DualChannel 

Dual Mono.

SingleChannel 

Mono.

The MPEG Version.

Enumerator:
Version1 

MPEG Version 1.

Version2 

MPEG Version 2.

Version2_5 

MPEG Version 2.5.


Constructor & Destructor Documentation

Parses an MPEG header based on data.

TagLib::MPEG::Header::Header ( File file,
long  offset,
bool  checkLength = true 
)

Parses an MPEG header based on file and offset.

Note:
If checkLength is true, this requires the next MPEG frame to check if the frame length is parsed and calculated correctly. So it's suitable for seeking for the first valid frame.

Does a shallow copy of h.

virtual TagLib::MPEG::Header::~Header ( ) [virtual]

Destroys this Header instance.


Member Function Documentation

Returns the bitrate encoded in the header.

Returns the channel mode for this frame.

Returns the frame length in bytes.

Returns true if the copyrighted bit is set.

Returns true if the "original" bit is set.

Returns true if the frame is padded.

Returns true if the frame is at least an appropriate size and has legal values.

Returns the layer version. This will be between the values 1-3.

Header& TagLib::MPEG::Header::operator= ( const Header h)

Makes a shallow copy of the header.

Returns true if the MPEG protection bit is enabled.

Returns the sample rate in Hz.

Returns the number of frames per sample.

Returns the MPEG Version of the header.


The documentation for this class was generated from the following file: