An example is shown below for an H.264 video track with 1280x720p resolution and 2 temporal layers at 30 fps and 60 fps frame rate.
codec: "avc3.42E01F" bitrate: 1500000 framerate: 60 width: 1280 height: 720
When ready for publishing, each encoded video chunk is considered as input
to MOQT Object payload. If encrypted, the output of encryption will serve as
the object's payload. The GroupID is incremented by 1 at Independent (IDR)
frame boundaries. Each MOQT group shall contain 2 SubGroups corresponding
to the 2 temporal layers as shown below:
Layer:0/30fps Subgroup: 0 ObjectID: even Layer:1/60fps Subgroup: 1 ObjectID: odd
Within the MOQT group, ObjectID is increment by 1 for each encoded video
frame, starting at 0 and resetting to 0 at the start of a new group. The
first encoded video frame, MOQT Object with ObjectID 0, shall be the
Indepedent (IDR) frame and the rest of the encoded video frames corresponds to
dependent (delta) frames, organized in the decode order. When mapping to
QUIC for sending, one unidirectional QUIC stream is used per SubGroup,
thus resulting in 2 QUIC streams per MOQT group.
When decoding at the 'End Consumer' for a given MOQT group, the objects must be fed in the GroupID then ObjectID order. This implies that the consumer media application needs to order objects across the SubGroup QUIC streams.