TagLib 1.6.1 (TagLib: TagLib::AudioProperties Class Reference)

TagLib::AudioProperties Class Reference

A simple, abstract interface to common audio properties. More...

#include <audioproperties.h>

Inheritance diagram for TagLib::AudioProperties:

List of all members.

Public Types

enum  ReadStyle { Fast, Average, Accurate }

Public Member Functions

virtual ~AudioProperties ()
virtual int length () const =0
virtual int bitrate () const =0
virtual int sampleRate () const =0
virtual int channels () const =0

Protected Member Functions

 AudioProperties (ReadStyle style)


Detailed Description

A simple, abstract interface to common audio properties.

The values here are common to most audio formats. For more specific, codec dependant values, please see see the subclasses APIs. This is meant to compliment the TagLib::File and TagLib::Tag APIs in providing a simple interface that is sufficient for most applications.


Member Enumeration Documentation

Reading audio properties from a file can sometimes be very time consuming and for the most accurate results can often involve reading the entire file. Because in many situations speed is critical or the accuracy of the values is not particularly important this allows the level of desired accuracy to be set.

Enumerator:
Fast  Read as little of the file as possible.
Average  Read more of the file and make better values guesses.
Accurate  Read as much of the file as needed to report accurate values.


Constructor & Destructor Documentation

virtual TagLib::AudioProperties::~AudioProperties (  )  [virtual]

Destroys this AudioProperties instance.

TagLib::AudioProperties::AudioProperties ( ReadStyle  style  )  [protected]

Construct an audio properties instance. This is protected as this class should not be instantiated directly, but should be instantiated via its subclasses and can be fetched from the FileRef or File APIs.

See also:
ReadStyle


Member Function Documentation

virtual int TagLib::AudioProperties::bitrate (  )  const [pure virtual]

Returns the most appropriate bit rate for the file in kb/s. For constant bitrate formats this is simply the bitrate of the file. For variable bitrate formats this is either the average or nominal bitrate.

Implemented in TagLib::ASF::Properties, TagLib::FLAC::Properties, TagLib::MP4::Properties, TagLib::MPC::Properties, TagLib::MPEG::Properties, TagLib::Ogg::Speex::Properties, TagLib::Ogg::Vorbis::Properties, TagLib::RIFF::AIFF::Properties, TagLib::RIFF::WAV::Properties, TagLib::TrueAudio::Properties, and TagLib::WavPack::Properties.


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