Skip to content

Commit a607eaf

Browse files
dericedrobUx4
authored andcommitted
add T_QUICKTIME codec mappings
1 parent 53f00ba commit a607eaf

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

codec_specs.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ Video | "V_"
3737
Audio | "A_"
3838
Subtitle | "S_"
3939
Button | "B_"
40+
Timecode | "T_"
4041

4142
Each `Codec ID` **MUST** include a `Major Codec ID` immediately following the `Codec ID Prefix`.
4243
A `Major Codec ID` **MAY** be followed by an **OPTIONAL** `Codec ID Suffix` to communicate a refinement
@@ -997,3 +998,25 @@ Block type name: MVC configuration
997998

998999
Description: the `BlockAddIDExtraData` data is interpreted as `MVCDecoderConfigurationRecord` structure, as defined in [@!ISO.14496-15].
9991000
This extension **MUST NOT** be used if `Codec ID` is not `V_MPEG4/ISO/AVC`.
1001+
1002+
## Timecode Codec Mappings
1003+
1004+
### T_QUICKTIME/SINGLE
1005+
1006+
Codec ID: T_QUICKTIME/SINGLE
1007+
1008+
Codec Name: QuickTime timecode track (continuous)
1009+
1010+
Description: `T_QUICKTIME/SINGLE` is used to identify Timecode tracks as stored in QuickTime. The `QuickTime Timecode Sample Data` is stored within the Block's data section. For an explanation of `QuickTime Timecode Sample Data` read [QuickTime File Format Specification](https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFChap3/qtff3.html#//apple_ref/doc/uid/TP40000939-CH205-57421). In the context of Matroska, `T_QUICKTIME/SINGLE` tracks MUST only relate to exactly one `Cluster` which MUST have a `Cluster Timecode` of zero and exactly one `SimpleBlock` or `BlockGroup Element`. The storage of the `QuickTime Timecode Sample Data` with the `SimpleBlock` or `BlockGroup Element` allows the `QuickTime Timecode` to be mapped to the `Matroska Timecode` at a single point. The `QuickTime Timecode` value MAY then be evaluated at any point in the `Matroska Timecode` by using the initialised `Timecode Sample Description`, the single `QuickTime Timecode Sample Data` value, and the `Matroska Timecode`.
1011+
1012+
Initialisation: The `Private Data` contains the `Timecode Sample Description` which in QuickTime is stored within the 'tmcd' atom after the mandatory `data reference index` value. For an explanation of the `Timecode Sample Description` read [QuickTime File Format Specification](https://developer.apple.com/library/content/documentation/QuickTime/QTFF/QTFFChap3/qtff3.html#//apple_ref/doc/uid/TP40000939-CH205-69831).
1013+
1014+
### T_QUICKTIME/MULTIPLE
1015+
1016+
Codec ID: T_QUICKTIME/MULTIPLE
1017+
1018+
Codec Name: QuickTime timecode track (continuous)
1019+
1020+
Description: Same as defined in the `T_QUICKTIME/SINGLE` `Codec Mapping`, except that the `T_QUICKTIME/MULTIPLE` track MAY reference multiple `Clusters`. The `QuickTime Timecode` value MAY then be evaluated at any point in the `Matroska Timecode` by using the `Matroska Timecode`, the initialised `Timecode Sample Description`, the `QuickTime Timecode Sample Data` value of the `Cluster` which has the greatest `Timecode` which is equal to or lesser than the current `Matroska Timecode` value.
1021+
1022+
Initialisation: Same as defined in the `T_QUICKTIME/SINGLE` `Codec Mapping`.

0 commit comments

Comments
 (0)