#include <IsoYUVFile.hpp>
Inheritance diagram for IsoYUVFile:
Public Member Functions | |
IsoYUVFile () | |
IsoYUVFile (UInt32 height, UInt32 width, UInt32 timeScale) | |
virtual | ~IsoYUVFile () |
void | init (UInt32 height, UInt32 width, UInt32 timeScale, bool useSpecifiedTime=false, UInt32 specifiedTime=0) |
void | addNewSampleInformation (UInt32 size, UInt32 timeDelta, bool useSpecifiedTime=false, UInt32 specifiedTime=0) |
void | finalizeHeader (UInt32 requiredSize=0) |
void | updateChunkOffset (UInt32 offsetToAdd) |
Public Attributes | |
unsigned_int32 | trackID |
IsoYUVFile::IsoYUVFile | ( | ) |
IsoYUVFile::IsoYUVFile | ( | UInt32 | height, | |
UInt32 | width, | |||
UInt32 | timeScale | |||
) |
Class Constructor. calls init with these parameters
height | Height of the YUV sequence | |
width | Width of the YUV sequence | |
timeScale | timeScale of the YUV sequence, i.e. # of clock ticks in a second |
IsoYUVFile::~IsoYUVFile | ( | ) | [virtual] |
void IsoYUVFile::addNewSampleInformation | ( | UInt32 | size, | |
UInt32 | timeDelta, | |||
bool | useSpecifiedTime = false , |
|||
UInt32 | specifiedTime = 0 | |||
) |
Add a YUV frame sample reference in the header
size | Number of bytes of current YUV frame | |
timeDelta | Duration from the last sample | |
useSpecifiedTime | If true, the last field is used to initialize header time stamps, else, time is calculated internally using standard C time routines. False by default | |
specifiedTime | If useSpecifiedTime is true, should carry the time to initialize headers, according to ISO/IEC 14496-12:2005(E). Ignored otherwise |
void IsoYUVFile::finalizeHeader | ( | UInt32 | requiredSize = 0 |
) |
After adding all samples, call this to update all the header tables finally. Can be called multiple times to re-finalize after adding some more samples
requiredSize | If non-zero, FreeSpaceBox is used to stuff the header to required size. |
void IsoYUVFile::init | ( | UInt32 | height, | |
UInt32 | width, | |||
UInt32 | timeScale, | |||
bool | useSpecifiedTime = false , |
|||
UInt32 | specifiedTime = 0 | |||
) |
Initialization function. Use only once to create file
height | Height of the YUV sequence | |
width | Width of the YUV sequence | |
timeScale | timeScale of the YUV sequence, i.e. # of clock ticks in a second | |
useSpecifiedTime | If true, the last field is used to initialize header time stamps, else, time is calculated internally using standard C time routines. False by default | |
specifiedTime | If useSpecifiedTime is true, should carry the time to initialize headers, according to ISO/IEC 14496-12:2005(E). Ignored otherwise |
void IsoYUVFile::updateChunkOffset | ( | UInt32 | offsetToAdd | ) |
Can be used to update ChunkOffsetBox entries with a given offset
unsigned_int32 IsoYUVFile::trackID |