2.2.4.4 TfxdBox

The TfxdBox field and related fields encapsulate the absolute timestamp and duration of a fragment in a live presentation. This field SHOULD be ignored if it appears in an on-demand presentation.

TfxdBox (variable): The metadata container for per-sample defaults.

TfxdBoxLength (4 bytes): The length of the TfxdBox field, in bytes, including the TfxdBoxLength field. If the value of the TfxdBoxLength field is %00.00.00.01, the TfxdBoxLongLength field MUST be present.

TfxdBoxLongLength (8 bytes): The length of the TfxdBox field, in bytes, including the TfxdBoxLongLength field.

TfxdBoxVersion (1 byte): The box version. If this field contains the value %x01, the TfxdBoxDataFields64 field MUST be present inside the TfxdBoxFields field. Otherwise, the TfxdBoxDataFields32 field MUST be present inside the TfxdBoxFields field.

FragmentAbsoluteTime32 (4 bytes): The absolute timestamp of the first sample of the fragment, in timescale increments for the track.

FragmentDuration32 (4 bytes): The total duration of all samples in the fragment, in timescale increments for the track.

FragmentAbsoluteTime64 (8 bytes): The absolute timestamp of the first sample of the fragment, in timescale increments for the track.

FragmentDuration64 (8 bytes): The total duration of all samples in the fragment, in timescale increments for the track.

The syntax of the fields that are defined in this section, specified in ABNF [RFC5234], is as follows.

  
 TfxdBox = TfxdBoxLength TfxdBoxType [TfxdBoxLongLength] TfxdBoxUUID TfxdBoxFields
           TfxdBoxChildren
 TfxdBoxType = %d117 %d117 %d105 %d100
 TfxdBoxLength = BoxLength
 TfxdBoxLongLength = LongBoxLength
 TfxdBoxUUID = %x6D %x1D %x9B %x05 %x42 %xD5 %x44 %xE6
               %x80 %xE2 %x14 %x1D %xAF %xF7 %x57 %xB2
 TfxdBoxFields = TfxdBoxVersion
                 TfxdBoxFlags
                 TfxdBoxDataFields32 / TfxdBoxDataFields64
 TfxdBoxVersion = %x00-01
 TfxdBoxFlags = 24*24RESERVED-BIT
 TfxdBoxDataFields32 = FragmentAbsoluteTime32
                       FragmentDuration32
 TfxdBoxDataFields64 = FragmentAbsoluteTime64
                       FragmentDuration64 
 FragmentAbsoluteTime32 = UNSIGNED-INT32
 FragmentDuration32 = UNSIGNED-INT32
 FragmentAbsoluteTime64 = UNSIGNED-INT64
 FragmentDuration64 = UNSIGNED-INT64
 TfxdBoxChildren = *( VendorExtensionUUIDBox )