av1decoder: Already have picture for current frame
I am consistently hitting the following error while decoding an AV1 stream that otherwise decodes with VLC:
if (priv->current_picture != NULL) {
GST_ERROR_OBJECT (self, "Already have picture for current frame");
return GST_FLOW_ERROR;
}
I have nailed this down to the following:
0:00:13.992407779 311 0xaaaaaad156a0 LOG av1decoder gstav1decoder.c:542:gst_av1_decoder_decode_one_obu:<v4l2slav1dec0> Decode obu temporal delimiter
0:00:17.102601639 311 0xaaaaaad156a0 LOG av1decoder gstav1decoder.c:542:gst_av1_decoder_decode_one_obu:<v4l2slav1dec0> Decode obu sequence header
0:00:37.508097178 311 0xaaaaaad156a0 LOG av1decoder gstav1decoder.c:542:gst_av1_decoder_decode_one_obu:<v4l2slav1dec0> Decode obu frame
0:00:51.442649778 311 0xaaaaaad156a0 LOG av1decoder gstav1decoder.c:542:gst_av1_decoder_decode_one_obu:<v4l2slav1dec0> Decode obu temporal delimiter
0:00:15.490452443 384 0xaaaaaac432a0 LOG av1decoder gstav1decoder.c:542:gst_av1_decoder_decode_one_obu:<v4l2slav1dec0> Decode obu frame
0:00:25.397526703 384 0xaaaaaac432a0 LOG av1decoder gstav1decoder.c:542:gst_av1_decoder_decode_one_obu:<v4l2slav1dec0> Decode obu frame
0:00:37.101018193 384 0xaaaaaac432a0 ERROR av1decoder gstav1decoder.c:384:gst_av1_decoder_decode_frame_header:<v4l2slav1dec0> Already have picture for current frame
I skimmed the AV1 spec and found no mention of whether two frame OBUs in a row is an issue. @He_Junyan what do you think?