TagLib
2.0.2
|
An implementation of TagLib::File with some helpers for Ogg based formats. More...
#include <oggfile.h>
Public Member Functions | |
~File () override | |
File (const File &)=delete | |
File & | operator= (const File &)=delete |
ByteVector | packet (unsigned int i) |
void | setPacket (unsigned int i, const ByteVector &p) |
const PageHeader * | firstPageHeader () |
const PageHeader * | lastPageHeader () |
bool | save () override |
![]() | |
File (const File &)=delete | |
File & | operator= (const File &)=delete |
FileName | name () const |
virtual Tag * | tag () const =0 |
virtual PropertyMap | properties () const |
virtual void | removeUnsupportedProperties (const StringList &properties) |
virtual PropertyMap | setProperties (const PropertyMap &properties) |
virtual StringList | complexPropertyKeys () const |
virtual List< VariantMap > | complexProperties (const String &key) const |
virtual bool | setComplexProperties (const String &key, const List< VariantMap > &value) |
virtual AudioProperties * | audioProperties () const =0 |
ByteVector | readBlock (size_t length) |
void | writeBlock (const ByteVector &data) |
offset_t | find (const ByteVector &pattern, offset_t fromOffset=0, const ByteVector &before=ByteVector()) |
offset_t | rfind (const ByteVector &pattern, offset_t fromOffset=0, const ByteVector &before=ByteVector()) |
void | insert (const ByteVector &data, offset_t start=0, size_t replace=0) |
void | removeBlock (offset_t start=0, size_t length=0) |
bool | readOnly () const |
bool | isOpen () const |
bool | isValid () const |
void | seek (offset_t offset, Position p=Beginning) |
void | clear () |
offset_t | tell () const |
offset_t | length () |
Protected Member Functions | |
File (FileName file) | |
File (IOStream *stream) | |
![]() | |
File (FileName fileName) | |
File (IOStream *stream) | |
void | setValid (bool valid) |
void | truncate (offset_t length) |
Additional Inherited Members | |
![]() | |
enum | Position { Beginning , Current , End } |
enum | StripTags { StripNone , StripOthers } |
enum | DuplicateTags { Duplicate , DoNotDuplicate } |
![]() | |
static unsigned int | bufferSize () |
An implementation of TagLib::File with some helpers for Ogg based formats.
This is an implementation of Ogg file page and packet rendering and is of use to Ogg based formats. While the API is small this handles the non-trivial details of breaking up an Ogg stream into packets and makes these available (via subclassing) to the codec metadata implementations.
|
overridevirtual |
Destroys this File instance.
Reimplemented from TagLib::File.
Reimplemented in TagLib::Ogg::FLAC::File, TagLib::Ogg::Opus::File, TagLib::Ogg::Speex::File, and TagLib::Ogg::Vorbis::File.
|
delete |
References File().
Referenced by File(), and operator=().
|
protected |
|
protected |
Constructs an Ogg file from stream.
References packet(), and TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE.
const PageHeader * TagLib::Ogg::File::firstPageHeader | ( | ) |
Returns a pointer to the PageHeader for the first page in the stream or null if the page could not be found.
const PageHeader * TagLib::Ogg::File::lastPageHeader | ( | ) |
Returns a pointer to the PageHeader for the last page in the stream or null if the page could not be found.
ByteVector TagLib::Ogg::File::packet | ( | unsigned int | i | ) |
|
overridevirtual |
Save the file and its associated tags. This should be reimplemented in the concrete subclasses. Returns true
if the save succeeds.
Implements TagLib::File.
Reimplemented in TagLib::Ogg::FLAC::File, TagLib::Ogg::Opus::File, TagLib::Ogg::Speex::File, and TagLib::Ogg::Vorbis::File.
void TagLib::Ogg::File::setPacket | ( | unsigned int | i, |
const ByteVector & | p ) |
Sets the packet with index i to the value p.