![]() |
|
An implementation of TagLib::File with FLAC specific methods. More...
#include <flacfile.h>
Public Member Functions | |
File (FileName file, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
File (FileName file, ID3v2::FrameFactory *frameFactory, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
virtual | ~File () |
virtual TagLib::Tag * | tag () const |
virtual Properties * | audioProperties () const |
virtual bool | save () |
ID3v2::Tag * | ID3v2Tag (bool create=false) |
ID3v1::Tag * | ID3v1Tag (bool create=false) |
Ogg::XiphComment * | xiphComment (bool create=false) |
void | setID3v2FrameFactory (const ID3v2::FrameFactory *factory) |
ByteVector | streamInfoData () |
long | streamLength () |
List< Picture * > | pictureList () |
void | removePictures () |
void | addPicture (Picture *picture) |
![]() | |
FileName | name () const |
ByteVector | readBlock (ulong length) |
void | writeBlock (const ByteVector &data) |
long | find (const ByteVector &pattern, long fromOffset=0, const ByteVector &before=ByteVector::null) |
long | rfind (const ByteVector &pattern, long fromOffset=0, const ByteVector &before=ByteVector::null) |
void | insert (const ByteVector &data, ulong start=0, ulong replace=0) |
void | removeBlock (ulong start=0, ulong length=0) |
bool | readOnly () const |
bool | isOpen () const |
bool | isValid () const |
void | seek (long offset, Position p=Beginning) |
void | clear () |
long | tell () const |
long | length () |
Additional Inherited Members | |
![]() | |
enum | Position { Beginning, Current, End } |
![]() | |
static bool | isReadable (const char *file) |
static bool | isWritable (const char *name) |
![]() | |
File (FileName file) | |
void | setValid (bool valid) |
void | truncate (long length) |
![]() | |
static uint | bufferSize () |
An implementation of TagLib::File with FLAC specific methods.
This implements and provides an interface for FLAC files to the TagLib::Tag and TagLib::AudioProperties interfaces by way of implementing the abstract TagLib::File API as well as providing some additional information specific to FLAC files.
TagLib::FLAC::File::File | ( | FileName | file, |
bool | readProperties = true , |
||
Properties::ReadStyle | propertiesStyle = Properties::Average |
||
) |
Contructs a FLAC file from file. If readProperties is true the file's audio properties will also be read using propertiesStyle. If false, propertiesStyle is ignored.
TagLib::FLAC::File::File | ( | FileName | file, |
ID3v2::FrameFactory * | frameFactory, | ||
bool | readProperties = true , |
||
Properties::ReadStyle | propertiesStyle = Properties::Average |
||
) |
|
virtual |
Destroys this instance of the File.
Reimplemented from TagLib::File.
void TagLib::FLAC::File::addPicture | ( | Picture * | picture | ) |
Add a new picture to the file. The file takes ownership of the picture and will handle freeing its memory.
|
virtual |
Returns the FLAC::Properties for this file. If no audio properties were read then this will return a null pointer.
Implements TagLib::File.
ID3v1::Tag* TagLib::FLAC::File::ID3v1Tag | ( | bool | create = false | ) |
Returns a pointer to the ID3v1 tag of the file.
If create is false (the default) this will return a null pointer if there is no valid ID3v1 tag. If create is true it will create an ID3v1 tag if one does not exist.
ID3v2::Tag* TagLib::FLAC::File::ID3v2Tag | ( | bool | create = false | ) |
Returns a pointer to the ID3v2 tag of the file.
If create is false (the default) this will return a null pointer if there is no valid ID3v2 tag. If create is true it will create an ID3v2 tag if one does not exist.
Returns a list of pictures attached to the FLAC file.
void TagLib::FLAC::File::removePictures | ( | ) |
Remove all attached images.
|
virtual |
Save the file. This will primarily save the XiphComment, but will also keep any old ID3-tags up to date. If the file has no XiphComment, one will be constructed from the ID3-tags.
This returns true if the save was successful.
Implements TagLib::File.
void TagLib::FLAC::File::setID3v2FrameFactory | ( | const ID3v2::FrameFactory * | factory | ) |
Set the ID3v2::FrameFactory to something other than the default. This can be used to specify the way that ID3v2 frames will be interpreted when
ByteVector TagLib::FLAC::File::streamInfoData | ( | ) |
Returns the block of data used by FLAC::Properties for parsing the stream properties.
long TagLib::FLAC::File::streamLength | ( | ) |
Returns the length of the audio-stream, used by FLAC::Properties for calculating the bitrate.
|
virtual |
Returns the Tag for this file. This will be a union of XiphComment, ID3v1 and ID3v2 tags.
Implements TagLib::File.
Ogg::XiphComment* TagLib::FLAC::File::xiphComment | ( | bool | create = false | ) |
Returns a pointer to the XiphComment for the file.
If create is false (the default) this will return a null pointer if there is no valid XiphComment. If create is true it will create a XiphComment if one does not exist.