![]() |
Miam-Player
0.8.0
A nice music player
|
An implementation of TagLib::File with FLAC specific methods. More...
#include <flacfile.h>
Public Types | |
| enum | TagTypes { NoTags = 0x0000, XiphComment = 0x0001, ID3v1 = 0x0002, ID3v2 = 0x0004, AllTags = 0xffff } |
| This set of flags is used for various operations and is suitable for being OR-ed together. More... | |
Public Types inherited from TagLib::File | |
| enum | Position { Beginning, Current, End } |
| Position in the file used for seeking. More... | |
Public Member Functions | |
| File (FileName file, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
| Constructs a FLAC file from file. More... | |
| File (FileName file, ID3v2::FrameFactory *frameFactory, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
| Constructs an FLAC file from file. More... | |
| File (IOStream *stream, ID3v2::FrameFactory *frameFactory, bool readProperties=true, Properties::ReadStyle propertiesStyle=Properties::Average) | |
| Constructs a FLAC file from stream. More... | |
| virtual | ~File () |
| Destroys this instance of the File. More... | |
| virtual TagLib::Tag * | tag () const |
| Returns the Tag for this file. More... | |
| PropertyMap | properties () const |
| Implements the unified property interface – export function. More... | |
| void | removeUnsupportedProperties (const StringList &) |
| PropertyMap | setProperties (const PropertyMap &) |
| Implements the unified property interface – import function. More... | |
| virtual Properties * | audioProperties () const |
| Returns the FLAC::Properties for this file. More... | |
| virtual bool | save () |
| Save the file. More... | |
| ID3v2::Tag * | ID3v2Tag (bool create=false) |
| Returns a pointer to the ID3v2 tag of the file. More... | |
| ID3v1::Tag * | ID3v1Tag (bool create=false) |
| Returns a pointer to the ID3v1 tag of the file. More... | |
| Ogg::XiphComment * | xiphComment (bool create=false) |
| Returns a pointer to the XiphComment for the file. More... | |
| void | setID3v2FrameFactory (const ID3v2::FrameFactory *factory) |
| Set the ID3v2::FrameFactory to something other than the default. More... | |
| ByteVector | streamInfoData () |
| Returns the block of data used by FLAC::Properties for parsing the stream properties. More... | |
| long | streamLength () |
| Returns the length of the audio-stream, used by FLAC::Properties for calculating the bitrate. More... | |
| List< Picture * > | pictureList () |
| Returns a list of pictures attached to the FLAC file. More... | |
| void | removePicture (Picture *picture, bool del=true) |
| Removes an attached picture. More... | |
| void | removePictures () |
| Remove all attached images. More... | |
| void | addPicture (Picture *picture) |
| Add a new picture to the file. More... | |
| void | strip (int tags=AllTags) |
| This will remove the tags that match the OR-ed together TagTypes from the file. More... | |
| bool | hasXiphComment () const |
| Returns whether or not the file on disk actually has a XiphComment. More... | |
| bool | hasID3v1Tag () const |
| Returns whether or not the file on disk actually has an ID3v1 tag. More... | |
| bool | hasID3v2Tag () const |
| Returns whether or not the file on disk actually has an ID3v2 tag. More... | |
Public Member Functions inherited from TagLib::File | |
| FileName | name () const |
| Returns the file name in the local file system encoding. More... | |
| PropertyMap | properties () const |
| Exports the tags of the file as dictionary mapping (human readable) tag names (uppercase Strings) to StringLists of tag values. More... | |
| void | removeUnsupportedProperties (const StringList &properties) |
| Removes unsupported properties, or a subset of them, from the file's metadata. More... | |
| PropertyMap | setProperties (const PropertyMap &properties) |
| Sets the tags of this File to those specified in properties. More... | |
| ByteVector | readBlock (unsigned long length) |
| Reads a block of size length at the current get pointer. More... | |
| void | writeBlock (const ByteVector &data) |
| Attempts to write the block data at the current get pointer. More... | |
| long | find (const ByteVector &pattern, long fromOffset=0, const ByteVector &before=ByteVector()) |
| Returns the offset in the file that pattern occurs at or -1 if it can not be found. More... | |
| long | rfind (const ByteVector &pattern, long fromOffset=0, const ByteVector &before=ByteVector()) |
| Returns the offset in the file that pattern occurs at or -1 if it can not be found. More... | |
| void | insert (const ByteVector &data, unsigned long start=0, unsigned long replace=0) |
| Insert data at position start in the file overwriting replace bytes of the original content. More... | |
| void | removeBlock (unsigned long start=0, unsigned long length=0) |
| Removes a block of the file starting a start and continuing for length bytes. More... | |
| bool | readOnly () const |
| Returns true if the file is read only (or if the file can not be opened). More... | |
| bool | isOpen () const |
| Since the file can currently only be opened as an argument to the constructor (sort-of by design), this returns if that open succeeded. More... | |
| bool | isValid () const |
| Returns true if the file is open and readable. More... | |
| void | seek (long offset, Position p=Beginning) |
| Move the I/O pointer to offset in the file from position p. More... | |
| void | clear () |
| Reset the end-of-file and error flags on the file. More... | |
| long | tell () const |
| Returns the current offset within the file. More... | |
| long | length () |
| Returns the length of the file. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from TagLib::File | |
| static bool | isReadable (const char *file) |
| Returns true if file can be opened for reading. More... | |
| static bool | isWritable (const char *name) |
| Returns true if file can be opened for writing. More... | |
Protected Member Functions inherited from TagLib::File | |
| File (FileName file) | |
| Construct a File object and opens the file. More... | |
| File (IOStream *stream) | |
| Construct a File object and use the stream instance. More... | |
| void | setValid (bool valid) |
| Marks the file as valid or invalid. More... | |
| void | truncate (long length) |
| Truncates the file to a length. More... | |
Static Protected Member Functions inherited from TagLib::File | |
| static unsigned int | bufferSize () |
| Returns the buffer size that is used for internal buffering. More... | |
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 |
||
| ) |
Constructs a FLAC file from file.
If readProperties is true the file's audio properties will also be read.
| TagLib::FLAC::File::File | ( | FileName | file, |
| ID3v2::FrameFactory * | frameFactory, | ||
| bool | readProperties = true, |
||
| Properties::ReadStyle | propertiesStyle = Properties::Average |
||
| ) |
| TagLib::FLAC::File::File | ( | IOStream * | stream, |
| ID3v2::FrameFactory * | frameFactory, | ||
| bool | readProperties = true, |
||
| Properties::ReadStyle | propertiesStyle = Properties::Average |
||
| ) |
Constructs a FLAC file from stream.
If readProperties is true the file's audio properties will also be read.
If this file contains and ID3v2 tag the frames will be created using frameFactory.
|
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.
| bool TagLib::FLAC::File::hasID3v1Tag | ( | ) | const |
Returns whether or not the file on disk actually has an ID3v1 tag.
| bool TagLib::FLAC::File::hasID3v2Tag | ( | ) | const |
Returns whether or not the file on disk actually has an ID3v2 tag.
| bool TagLib::FLAC::File::hasXiphComment | ( | ) | const |
Returns whether or not the file on disk actually has a XiphComment.
| 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 returns a null pointer if there is no valid APE tag. If create is true it will create an APE tag if one does not exist and returns a valid pointer.
| 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 returns 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 and returns a valid pointer.
Returns a list of pictures attached to the FLAC file.
| PropertyMap TagLib::FLAC::File::properties | ( | ) | const |
Implements the unified property interface – export function.
If the file contains more than one tag (e.g. XiphComment and ID3v1), only the first one (in the order XiphComment, ID3v2, ID3v1) will be converted to the PropertyMap.
| void TagLib::FLAC::File::removePicture | ( | Picture * | picture, |
| bool | del = true |
||
| ) |
Removes an attached picture.
If del is true the picture's memory will be freed; if it is false, it must be deleted by the user.
| void TagLib::FLAC::File::removePictures | ( | ) |
Remove all attached images.
| void TagLib::FLAC::File::removeUnsupportedProperties | ( | const StringList & | ) |
|
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
| PropertyMap TagLib::FLAC::File::setProperties | ( | const PropertyMap & | ) |
| 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.
| void TagLib::FLAC::File::strip | ( | int | tags = AllTags | ) |
This will remove the tags that match the OR-ed together TagTypes from the file.
By default it removes all tags.
|
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 returns a null pointer if there is no valid XiphComment. If create is true it will create a XiphComment if one does not exist and returns a valid pointer.