MPEGGroup / FileFormat

MPEG file format discussions
23 stars 0 forks source link

ISOBMFF Order of track and item references #6

Closed dwsinger closed 4 years ago

dwsinger commented 4 years ago

We need notes/documentation on these that order may be (and often is) significant.

dwsinger commented 4 years ago

This paragraph:

This box provides a reference from the containing track to another track in the presentation. These references are typed. A 'hint' reference links from the containing hint track to the media data that it hints. A content description reference 'cdsc' links a descriptive or metadata track to the content which it describes. The 'hind' dependency indicates that the referenced track(s) may contain media data required for decoding of the track containing the track reference. The referenced tracks shall be hint tracks. The 'hind' dependency can, for example, be used for indicating the dependencies between hint tracks documenting layered IP multicast over RTP.

needs a re-write.

This box includes a set of TrackReferenceTypeBoxes, each of which indicates, by its type, that the enclosing track has one of more references of that type. Each reference type shall occur at most once. Within each TrackReferenceTypeBox there is an array of ids; within a given array, a given value shall occur at most once. Other structures in the file formats index through these arrays; index values start at 1.

Then this material should be merged into the semantics for each reference type:

A 'hint' reference links from the containing hint track to the media data that it hints. A content description reference 'cdsc' links a descriptive or metadata track to the content which it describes. The 'hind' dependency indicates that the referenced track(s) may contain media data required for decoding of the track containing the track reference. The referenced tracks shall be hint tracks. The 'hind' dependency can, for example, be used for indicating the dependencies between hint tracks documenting layered IP multicast over RTP.

dwsinger commented 4 years ago

and the item reference box:

The ItemReferenceBox allows the linking of one item to others via typed references. All the references for one item of a specific type are collected into a SingleItemTypeReferenceBox, whose type is the reference type, and which has a from_item_ID field indicating which item is linked. The items linked to are then represented by an array of to_item_IDs. All these single item type reference boxes are then collected into the ItemReferenceBox. The reference types defined for the track reference box defined in ‎8.3.3 may be used here if appropriate, or other registered reference types. Version 1 of ItemReferenceBox with SingleItemReferenceBoxLarge should only be used when large from_item_ID or to_item_ID values (exceeding 65535) are required or expected to be required.

to two paragraphs

The ItemReferenceBox allows the linking of one item to others via typed references. All the references for one item of a specific type are collected into a SingleItemTypeReferenceBox, whose type is the reference type, and which has a from_item_ID field indicating which item is linked. The items linked to are then represented by an array of to_item_IDs; within a given array, a given value shall occur at most once. Other structures in the file formats index through these arrays; index values start at 1.

All these single item type reference boxes are then collected into the ItemReferenceBox. The reference types defined for the track reference box defined in ‎8.3.3 may be used here if appropriate, or other registered reference types. Version 1 of ItemReferenceBox with SingleItemReferenceBoxLarge should only be used when large from_item_ID or to_item_ID values (exceeding 65535) are required or expected to be required.

dwsinger commented 4 years ago

addressed in revised 6th edition