ivfparse: Add the AV01 FOURCC for parsing AV1 IVFs

Adds AV01 FOURCC to the list of allowed media files, in order to allow
parsing the IVF Container holding AV1 content.
At a later point dynamic resolution change can be supported - therefore
the sequence header OBU and frame header OBU of AV1 file must be parsed,
which can be done in future with the help of gst-lib gstav1parse.

https://bugzilla.gnome.org/show_bug.cgi?id=796677
This commit is contained in:
Georg Ottinger 2018-06-26 17:45:36 +02:00 committed by Sebastian Dröge
parent a387f4bc33
commit 71c5eae508

View file

@ -200,6 +200,10 @@ fourcc_to_media_type (guint32 fourcc)
break;
case GST_MAKE_FOURCC ('V', 'P', '9', '0'):
return "video/x-vp9";
break;
case GST_MAKE_FOURCC ('A', 'V', '0', '1'):
return "video/x-av1";
break;
default:
return NULL;
}
@ -341,8 +345,12 @@ gst_ivf_parse_handle_frame_data (GstIvfParse * ivf, GstBaseParseFrame * frame,
height = GST_READ_UINT16_LE (map.data + 8) & 0x3fff;
gst_ivf_parse_set_size (ivf, width, height);
}
} else {
} else if (ivf->fourcc == GST_MAKE_FOURCC ('V', 'P', '9', '0')) {
/* Fixme: Add vp9 frame header parsing? */
} else if (ivf->fourcc == GST_MAKE_FOURCC ('A', 'V', '0', '1')) {
/* Fixme: Add av1 frame header parsing? */
/* This would allow to parse dynamic resolution changes */
/* implement when gstav1parser is ready */
}
gst_buffer_unmap (frame->out_buffer, &map);
}