Tag Parser 12.3.1
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
|
Implementation of TagParser::AbstractTrack for IVF streams. More...
#include <ivfstream.h>
Public Member Functions | |
IvfStream (std::iostream &stream, std::uint64_t startOffset) | |
Constructs a new track for the stream at the specified startOffset. | |
~IvfStream () override | |
TrackType | type () const override |
Returns the type of the track if known; otherwise returns TrackType::Unspecified. | |
void | readFrame (Diagnostics &diag) |
Public Member Functions inherited from TagParser::AbstractTrack | |
virtual | ~AbstractTrack () |
Destroys the track. | |
std::istream & | inputStream () |
Returns the associated input stream. | |
void | setInputStream (std::istream &stream) |
Assigns another input stream. | |
std::ostream & | outputStream () |
Returns the associated output stream. | |
void | setOutputStream (std::ostream &stream) |
Assigns another output stream. | |
CppUtilities::BinaryReader & | reader () |
Returns a binary reader for the associated stream. | |
CppUtilities::BinaryWriter & | writer () |
Returns a binary writer for the associated stream. | |
std::uint64_t | startOffset () const |
Returns the start offset of the track in the associated stream. | |
TrackFlags | flags () const |
Returns flags (various boolean properties) of this track. | |
MediaFormat | format () const |
Returns the format of the track if known; otherwise returns MediaFormat::Unknown. | |
double | version () const |
Returns the version/level of the track if known; otherwise returns 0. | |
std::string_view | formatName () const |
Returns the format of the track as C-style string if known; otherwise returns the format abbreviation or an empty string. | |
std::string_view | formatAbbreviation () const |
Returns the a more or less common abbreviation for the format of the track if known; otherwise returns an empty string. | |
const std::string & | formatId () const |
Returns the format/codec ID. | |
MediaType | mediaType () const |
Returns the media type if known; otherwise returns MediaType::Other. | |
std::string_view | mediaTypeName () const |
Returns the string representation of the media type of the track. | |
std::uint64_t | size () const |
Returns the size in bytes if known; otherwise returns 0. | |
void | setSize (std::uint64_t size) |
Sets the size in bytes. | |
std::uint32_t | trackNumber () const |
Returns the track number if known; otherwise returns 0. | |
void | setTrackNumber (std::uint32_t trackNumber) |
Sets the track number. | |
std::uint64_t | id () const |
Returns the track ID if known; otherwise returns 0. | |
void | setId (std::uint64_t id) |
Sets the track ID. | |
const std::string | name () const |
Returns the track name if known; otherwise returns an empty string. | |
void | setName (std::string_view name) |
Sets the name. | |
const CppUtilities::TimeSpan & | duration () const |
Returns the duration if known; otherwise returns a TimeSpan of zero ticks. | |
double | bitrate () const |
Returns the average bitrate in kbit/s if known; otherwise returns zero. | |
double | maxBitrate () const |
Returns the maximum bitrate in kbit/s if known; otherwise returns zero. | |
const CppUtilities::DateTime & | creationTime () const |
Returns the creation time if known; otherwise returns a DateTime of zero ticks. | |
const CppUtilities::DateTime & | modificationTime () const |
Returns the time of the last modification if known; otherwise returns a DateTime of zero ticks. | |
const Locale & | locale () const |
Returns the locale of the track if known; otherwise returns an empty locale. | |
void | setLocale (const Locale &locale) |
Sets the locale of the track. | |
std::uint32_t | samplingFrequency () const |
Returns the number of samples per second if known; otherwise returns 0. | |
std::uint32_t | extensionSamplingFrequency () const |
Returns the number of samples per second if known; otherwise returns 0. | |
std::uint16_t | bitsPerSample () const |
Returns the number of bits per sample; otherwise returns 0. | |
std::uint16_t | channelCount () const |
Returns the number of channels if known; otherwise returns 0. | |
std::uint8_t | channelConfig () const |
Returns the channel configuration. | |
std::string_view | channelConfigString () const |
Returns a string with the channel configuration if available; otherwise returns nullptr. | |
std::uint8_t | extensionChannelConfig () const |
Returns the extension channel configuration if available; otherwise returns nullptr. | |
std::string_view | extensionChannelConfigString () const |
Returns a string with the extension channel configuration if available; otherwise returns nullptr. | |
std::uint64_t | sampleCount () const |
Returns the number of samples/frames if known; otherwise returns 0. | |
int | quality () const |
Returns the quality if known; otherwise returns 0. | |
const Size & | pixelSize () const |
Returns the size of the encoded video frames if known; otherwise returns a zero size. | |
const Size & | displaySize () const |
Returns the size of the video frames to display if known; otherwise returns a zero size. | |
const Size & | resolution () const |
Returns the resolution if known; otherwise returns a zero size. | |
const std::string & | compressorName () const |
Returns the compressor name if known; otherwise returns an empty string. | |
void | setCompressorName (std::string_view compressorName) |
Returns the compressor name if known; otherwise returns an empty string. | |
std::uint16_t | depth () const |
Returns the bit depth if known; otherwise returns 0. | |
std::uint32_t | fps () const |
Returns the number of frames per second if known; otherwise returns 0. | |
std::string_view | chromaFormat () const |
Returns the chroma subsampling format if known; otherwise returns nullptr. | |
const AspectRatio & | pixelAspectRatio () const |
Returns the pixel aspect ratio (PAR). | |
bool | isInterlaced () const |
Returns true if the video is interlaced; otherwise returns false. | |
std::uint32_t | timeScale () const |
Returns the time scale if known; otherwise returns 0. | |
bool | isEnabled () const |
Returns true if the track is marked as enabled; otherwise returns false. | |
void | setEnabled (bool enabled) |
Sets whether the track is enabled. | |
bool | isDefault () const |
Returns true if the track is marked as default; otherwise returns false. | |
void | setDefault (bool isDefault) |
Sets whether the track is a default track. | |
bool | isForced () const |
Returns true if the track is marked as forced; otherwise returns false. | |
void | setForced (bool forced) |
Sets whether the track is forced. | |
bool | hasLacing () const |
Returns true if the track has lacing; otherwise returns false. | |
bool | isEncrypted () const |
Returns true if the track is marked as encrypted; otherwise returns false. | |
std::uint32_t | colorSpace () const |
Returns the color space if known; otherwise returns 0. | |
const Margin & | cropping () const |
Returns the cropping if known; otherwise returns zero margins. | |
std::string | label () const |
Returns a label for the track. | |
std::string | description () const |
Returns a description about the track. | |
std::string | shortDescription () const |
Returns a short description about the track. | |
void | parseHeader (Diagnostics &diag, AbortableProgressFeedback &progress) |
Parses technical information about the track from the header. | |
bool | isHeaderValid () const |
Returns an indication whether the track header is valid. | |
Protected Member Functions | |
void | internalParseHeader (Diagnostics &diag, AbortableProgressFeedback &progress) override |
This method is internally called to parse header information. | |
Protected Member Functions inherited from TagParser::AbstractTrack | |
AbstractTrack (std::istream &inputStream, std::ostream &outputStream, std::uint64_t startOffset) | |
Constructs a new track. | |
AbstractTrack (std::iostream &stream, std::uint64_t startOffset) | |
Constructs a new track. | |
Implementation of TagParser::AbstractTrack for IVF streams.
|
inline |
Constructs a new track for the stream at the specified startOffset.
Definition at line 30 of file ivfstream.h.
|
inlineoverride |
Definition at line 36 of file ivfstream.h.
|
overrideprotectedvirtual |
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 | TagParser::Failure or a derived exception when a parsing error occurs. |
Implements TagParser::AbstractTrack.
Definition at line 23 of file ivfstream.cpp.
void TagParser::IvfStream::readFrame | ( | Diagnostics & | diag | ) |
Definition at line 61 of file ivfstream.cpp.
|
inlineoverridevirtual |
Returns the type of the track if known; otherwise returns TrackType::Unspecified.
Reimplemented from TagParser::AbstractTrack.
Definition at line 40 of file ivfstream.h.