This top-level ASF object supplies timecode indexing information for the
streams of an ASF file. It includes stream-specific indexing information based on the timecodes found in the file. If the Timecode Index Object is used, it is recommended that timecodes be stored as a Payload Extension System on the appropriate stream. It is also recommended that every timecode appearing in the ASF file have a corresponging index entry.
The index is designed to be broken into blocks to facilitate storage that is more space-efficient by using 32-bit offsets relative to a 64-bit base. That is, each index block has a full 64-bit offset in the block header that is added to the 32-bit offsets found in each index entry. If a file is larger than 2^32 bytes, then multiple index blocks can be used to fully index the entire large file while still keeping index entry offsets at 32 bits.
To locate an object with a particular timecode in an ASF file, one would typically look through the Timecode Index Object in blocks of the appropriate range and try to locate the nearest possible timecode. The corresponding Offset field values of the Index Entry are byte offsets that, when combined with the Block Position value of the Index Block, indicate the starting location in bytes of an ASF Data Packet relative to the start of the first ASF Data Packet in the file.
Any ASF file containing a Timecode Index Object shall also contain a Timecode Index Parameters Object in its ASF Header.
Located in /ASF/Object/TimecodeIndex.php (line 76)
ASF_Object | --ASF_Object_TimecodeIndex
Constructs the class with given parameters and reads object related data from the ASF file.
Returns an array of index entries. Each entry consists of the following keys.
Returns an array of index specifiers. Each entry consists of the following keys.
Inherited From ASF_Object
ASF_Object::__construct()
ASF_Object::getIdentifier()
ASF_Object::getOffset()
ASF_Object::getOption()
ASF_Object::getOptions()
ASF_Object::getParent()
ASF_Object::getSize()
ASF_Object::setIdentifier()
ASF_Object::setOffset()
ASF_Object::setOption()
ASF_Object::setOptions()
ASF_Object::setParent()
ASF_Object::setSize()
ASF_Object::__get()
ASF_Object::__set()
Indicates that the index type is Nearest Past Cleanpoint. The Nearest Past Cleanpoint indexes point to the closest data packet containing an entire object (or first fragment of an object) that has the Cleanpoint Flag set.
Nearest Past Cleanpoint is the most common type of index.
Indicates that the index type is Nearest Past Data Packet. The Nearest Past Data Packet indexes point to the data packet whose presentation time is closest to the index entry time.
Indicates that the index type is Nearest Past Media. The Nearest Past Object indexes point to the closest data packet containing an entire object or first fragment of an object.
Documentation generated on Fri, 05 Sep 2008 20:19:43 +0300 by phpDocumentor 1.4.1