Tag Parser
6.5.1
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
|
Implementation of Media::AbstractTrack for OGG streams. More...
#include <oggstream.h>
Public Member Functions | |
OggStream (OggContainer &container, std::vector< OggPage >::size_type startPage) | |
Constructs a new track for the stream at the specified startOffset. More... | |
~OggStream () | |
Destroys the track. More... | |
TrackType | type () const |
Returns the type of the track if known; otherwise returns TrackType::Unspecified. More... | |
std::size_t | startPage () const |
![]() | |
virtual | ~AbstractTrack () |
Destroys the track. More... | |
std::istream & | inputStream () |
Returns the associated input stream. More... | |
void | setInputStream (std::istream &stream) |
Assigns another input stream. More... | |
std::ostream & | outputStream () |
Returns the associated output stream. More... | |
void | setOutputStream (std::ostream &stream) |
Assigns another output stream. More... | |
IoUtilities::BinaryReader & | reader () |
Returns a binary reader for the associated stream. More... | |
IoUtilities::BinaryWriter & | writer () |
Returns a binary writer for the associated stream. More... | |
uint64 | startOffset () const |
Returns the start offset of the track in the associated stream. More... | |
MediaFormat | format () const |
Returns the format of the track if known; otherwise returns MediaFormat::Unknown. More... | |
double | version () const |
Returns the version/level of the track if known; otherwise returns 0. More... | |
const char * | formatName () const |
Returns the format of the track as C-style string if known; otherwise returns the format abbreviation or an empty string. More... | |
const char * | formatAbbreviation () const |
Returns the a more or less common abbreviation for the format of the track as C-style string if known; otherwise returns an empty string. More... | |
const std::string & | formatId () const |
Returns the format/codec ID. More... | |
MediaType | mediaType () const |
Returns the media type if known; otherwise returns MediaType::Other. More... | |
const char * | mediaTypeName () const |
Returns the string representation of the media type of the track. More... | |
uint64 | size () const |
Returns the size in bytes if known; otherwise returns 0. More... | |
uint32 | trackNumber () const |
Returns the track number if known; otherwise returns 0. More... | |
void | setTrackNumber (uint32 trackNumber) |
Sets the track number. More... | |
uint64 | id () const |
Returns the track ID if known; otherwise returns 0. More... | |
void | setId (uint64 id) |
Sets the track ID. More... | |
const std::string | name () const |
Returns the track name if known; otherwise returns an empty string. More... | |
void | setName (const std::string &name) |
Sets the name. More... | |
const ChronoUtilities::TimeSpan & | duration () const |
Returns the duration if known; otherwise returns a TimeSpan of zero ticks. More... | |
double | bitrate () const |
Returns the average bitrate in kbit/s if known; otherwise returns zero. More... | |
double | maxBitrate () const |
Returns the maximum bitrate in kbit/s if known; otherwise returns zero. More... | |
const ChronoUtilities::DateTime & | creationTime () const |
Returns the creation time if known; otherwise returns a DateTime of zero ticks. More... | |
const ChronoUtilities::DateTime & | modificationTime () const |
Returns the time of the last modification if known; otherwise returns a DateTime of zero ticks. More... | |
const std::string & | language () const |
Returns the language of the track if known; otherwise returns an empty string. More... | |
void | setLanguage (const std::string &language) |
Sets the language of the track. More... | |
uint32 | samplingFrequency () const |
Returns the number of samples per second if known; otherwise returns 0. More... | |
uint32 | extensionSamplingFrequency () const |
Returns the number of samples per second if known; otherwise returns 0. More... | |
uint16 | bitsPerSample () const |
Returns the number of bits per sample; otherwise returns 0. More... | |
uint16 | channelCount () const |
Returns the number of channels if known; otherwise returns 0. More... | |
byte | channelConfig () const |
Returns the channel configuration. More... | |
const char * | channelConfigString () const |
Returns a string with the channel configuration if available; otherwise returns nullptr. More... | |
byte | extensionChannelConfig () const |
Returns the extension channel configuration if available; otherwise returns nullptr. More... | |
const char * | extensionChannelConfigString () const |
Returns a string with the extension channel configuration if available; otherwise returns nullptr. More... | |
uint64 | sampleCount () const |
Returns the number of samples/frames if known; otherwise returns 0. More... | |
int | quality () const |
Returns the quality if known; otherwise returns 0. More... | |
const Size & | pixelSize () const |
Returns the size of the encoded video frames if known; otherwise returns a zero size. More... | |
const Size & | displaySize () const |
Returns the size of the video frames to display if known; otherwise returns a zero size. More... | |
const Size & | resolution () const |
Returns the resolution if known; otherwise returns a zero size. More... | |
const std::string & | compressorName () const |
Returns the compressor name if known; otherwise returns an empty string. More... | |
void | setCompressorName (const std::string &compressorName) |
Returns the compressor name if known; otherwise returns an empty string. More... | |
uint16 | depth () const |
Returns the bit depth if known; otherwise returns 0. More... | |
uint32 | fps () const |
Returns the number of frames per second if known; otherwise returns 0. More... | |
const char * | chromaFormat () const |
Returns the chroma subsampling format if known; otherwise returns nullptr. More... | |
const AspectRatio & | pixelAspectRatio () const |
Returns the pixel aspect ratio (PAR). More... | |
bool | isInterlaced () const |
Returns true if the video is denoted as interlaced; otherwise returns false. More... | |
uint32 | timeScale () const |
Returns the time scale if known; otherwise returns 0. More... | |
bool | isEnabled () const |
Returns true if the track is denoted as enabled; otherwise returns false. More... | |
void | setEnabled (bool enabled) |
Sets whether the track is enabled. More... | |
bool | isDefault () const |
Returns true if the track is denoted as default; otherwise returns false. More... | |
void | setDefault (bool isDefault) |
Sets whether the track is a default track. More... | |
bool | isForced () const |
Returns true if the track is denoted as forced; otherwise returns false. More... | |
void | setForced (bool forced) |
Sets whether the track is forced. More... | |
bool | hasLacing () const |
Returns true if the track has lacing; otherwise returns false. More... | |
bool | isEncrypted () const |
Returns true if the track is denoted as encrypted; otherwise returns false. More... | |
uint32 | colorSpace () const |
Returns the color space if known; otherwise returns 0. More... | |
const Margin & | cropping () const |
Returns the cropping if known; otherwise returns zero margins. More... | |
std::string | label () const |
Returns a label for the track. More... | |
std::string | description () const |
Returns a short description about the track. More... | |
void | parseHeader () |
Parses technical information about the track from the header. More... | |
bool | isHeaderValid () const |
Returns an indication whether the track header is valid. More... | |
![]() | |
const NotificationList & | notifications () const |
Returns notifications for the current object. More... | |
bool | hasNotifications () const |
Returns an indication whether there are notifications for the current object. More... | |
bool | hasCriticalNotifications () const |
Returns an indication whether there are critical notifications for the current object. More... | |
NotificationType | worstNotificationType () const |
Returns the worst notification type. More... | |
const std::string & | currentStatus () const |
Returns a status information for the current object. More... | |
double | currentPercentage () const |
Returns the progress percentage of the current object. More... | |
size_t | registerCallback (CallbackFunction callback) |
Registers a callback function. More... | |
void | unregisterCallback (size_t id) |
Unregisters a previously registered callback function whith the specified id. More... | |
void | unregisterAllCallbacks () |
Unregisters all callback functions. More... | |
void | forwardStatusUpdateCalls (StatusProvider *other=nullptr) |
Forwards all status updates calls to the specified statusProvider. More... | |
StatusProvider * | usedProvider () |
Returns the provider which callback functions will be called when the status or the percentage is updated. More... | |
void | tryToAbort () |
Commands the object to abort the current operation. More... | |
bool | isAborted () const |
Returns an indication whether the current operation should be aborted. More... | |
void | invalidateStatus () |
Invalidates the current status. More... | |
void | invalidateNotifications () |
Invalidates the object's notifications. More... | |
void | updateStatus (const std::string &status) |
This method is meant to be called by the derived class to report updated status information. More... | |
void | updateStatus (const std::string &status, double percentage) |
This method is meant to be called by the derived class to report updated status information. More... | |
void | updatePercentage (double percentage) |
This method is meant to be called by the derived class to report updated progress percentage only. More... | |
void | addNotification (const Notification ¬ification) |
This method is meant to be called by the derived class to add a notification. More... | |
void | addNotification (NotificationType type, const std::string &message, const std::string &context) |
This method is meant to be called by the derived class to add a notification of the specified type, message and context. More... | |
void | addNotifications (const StatusProvider &from) |
This method is meant to be called by the derived class to add all notifications from another StatusProvider instance. More... | |
void | addNotifications (const std::string &higherContext, const StatusProvider &from) |
This method is meant to be called by the derived class to add all notifications from another StatusProvider instance. More... | |
void | addNotifications (const NotificationList ¬ifications) |
This method is meant to be called by the derived class to add the specified notifications. More... | |
Protected Member Functions | |
void | internalParseHeader () |
This method is internally called to parse header information. More... | |
![]() | |
AbstractTrack (std::istream &inputStream, std::ostream &outputStream, uint64 startOffset) | |
Constructs a new track. More... | |
AbstractTrack (std::iostream &stream, uint64 startOffset) | |
Constructs a new track. More... | |
![]() | |
StatusProvider () | |
Constructs a new StatusProvider. More... | |
Friends | |
class | OggContainer |
Implementation of Media::AbstractTrack for OGG streams.
Definition at line 13 of file oggstream.h.
Media::OggStream::OggStream | ( | OggContainer & | container, |
std::vector< OggPage >::size_type | startPage | ||
) |
Constructs a new track for the stream at the specified startOffset.
Definition at line 34 of file oggstream.cpp.
Media::OggStream::~OggStream | ( | ) |
Destroys the track.
Definition at line 44 of file oggstream.cpp.
|
protectedvirtual |
This method is internally called to parse header information.
It needs to be implemented when subclassing this class.
Throws | std::ios_base::failure when an IO error occurs. |
Throws | Media::Failure or a derived exception when a parsing error occurs. |
Implements Media::AbstractTrack.
Definition at line 47 of file oggstream.cpp.
|
inline |
Definition at line 35 of file oggstream.h.
|
inlinevirtual |
Returns the type of the track if known; otherwise returns TrackType::Unspecified.
Reimplemented from Media::AbstractTrack.
Definition at line 40 of file oggstream.h.
|
friend |
Definition at line 15 of file oggstream.h.