Open johnsim opened 2 years ago
If indeed the number of coded frames is different for each QP and sequence, then that would violate the TR requirements of Clause 5.6, where it is mentioned that “Only fixed periodic (temporal) QP and coding structures are permitted and this should be investigated".
As we mentioned in our email and on the call, This is not what we observed using the VQ Analyzer. we did not notice any variability in the number of coded frames.
a) Do you still observe different number of frames being coded for each sequence and for each QP?
b) AV1 uses a combination of different flags in the bitstream to achieve a hierarchical coding structure. In particular there are the flags _show_existingframe, _showframe, and _showableframe, which may make it appear that some frames are “repeated”.
Is this what is meant here by “repeated” frames? A clarification would be appreciated.
Q2: Can you please provide information on the content of repeated frames?
In the AV1 specification, the following frame header syntax elements indicate to the decoder whether or not the decoded frame should be output/displayed immediately after decoding.
For a frame encoded out of its natural display order (typically a future reference, or AltRefframe),the encoder has three options. Using a GOP size=32 as an example, the first frame (POC=0) will be coded as a Key (Intra) frame. The second frame (POC=32) will be coded as an out of order Inter frame. The encoder has the following three options:
In option 1 and 2, the dummy frame will be shown as a “repeated” frame in the bitstream analyzer. In option 3, the overlay frame will be shown as a normal “inter” frame. In both cases, the decoder will always decode the AltRef frame.
In both cases, the total number of frames (counting both “real” frames and “dummy” frames) in the bitstream will be the same. It is determined by the GOP size and number of source frames. For example, if there are N frames in the input sequence, half of them will be encoded in their natural display order, and the other half will be encoded out of display order. The total number of frames (including both “real” frames and “dummy” frames) will be approximately (exactly if an integer number of GOPs are encoded) 1+(N-1)1.5. That is, the first key frame plus 1.5GOP_size frames per complete GOP.
As an example, the screen shot shown above corresponds to the file S1-A027-AV1_27.obu, and the table below shows the encoding order, frame type, and frame header flags for the first few frames.
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
Encoding Order | Display Order / POC (order hint) | Frame Type | Flags | Decoder behavior -- | -- | -- | -- | -- 0 | 0 | Key (Intra) | show_existing_frame=0 show_frame=1 | Display the decoded frame 1 | 32 | Inter | show_existing_frame=0 show_frame=0 showable_frame=1 | Decode the frame but do not display 2 | 16 | Inter | show_existing_frame=0 show_frame=0 showable_frame=1 | Decode the frame but do not display 3 | 8 | Inter | show_existing_frame=0 show_frame=0 showable_frame=1 | Decode the frame but do not display 4 | 4 | Inter | show_existing_frame=0 show_frame=0 showable_frame=1 | Decode the frame but do not display 5 | 2 | Inter | show_existing_frame=0 show_frame=0 showable_frame=1 | Decode the frame but do not display 6 | 1 | Inter | show_existing_frame=0 show_frame=1 | Display the decoded frame 7 | | Dummy frame | show_existing_frame=1 frame_to_show_map_idx=5 | Display the previously decoded frame (corresponding to POC=2) 8 | 3 | Inter | show_existing_frame=0 show_frame=1 | Display the decoded frame
The following request has been made over AV1 discussion email earlier:
The document S4aV210828 answers as following:
Some participants conducted AV1 simulations with suggested for Scenario 1 and 2 encoder parameters and observed non-regular coding order on several occasions.