mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-30 13:41:48 +00:00
h265parse: fix hvcC size check
In ISO/IEC 14496-15, the minimum size of a HEVCDecoderConfigurationRecord (i.e., the contents of a hvcC box) is 23 bytes. However, the code in h265parse checks that the size of this data is not less than 28 bytes, and it refuses to accept caps if the check fails. The result is that standards-conformant streams that don't carry any parameter sets in their hvcC boxes won't play. https://bugzilla.gnome.org//show_bug.cgi?id=731783
This commit is contained in:
parent
386e5774a7
commit
d9d4a91c62
1 changed files with 2 additions and 2 deletions
|
@ -1767,7 +1767,7 @@ gst_h265_parse_set_caps (GstBaseParse * parse, GstCaps * caps)
|
||||||
size = map.size;
|
size = map.size;
|
||||||
|
|
||||||
/* parse the hvcC data */
|
/* parse the hvcC data */
|
||||||
if (size < 28) {
|
if (size < 23) {
|
||||||
gst_buffer_unmap (codec_data, &map);
|
gst_buffer_unmap (codec_data, &map);
|
||||||
goto hvcc_too_small;
|
goto hvcc_too_small;
|
||||||
}
|
}
|
||||||
|
@ -1854,7 +1854,7 @@ gst_h265_parse_set_caps (GstBaseParse * parse, GstCaps * caps)
|
||||||
/* ERRORS */
|
/* ERRORS */
|
||||||
hvcc_too_small:
|
hvcc_too_small:
|
||||||
{
|
{
|
||||||
GST_DEBUG_OBJECT (h265parse, "hvcC size %" G_GSIZE_FORMAT " < 8", size);
|
GST_DEBUG_OBJECT (h265parse, "hvcC size %" G_GSIZE_FORMAT " < 23", size);
|
||||||
goto refuse_caps;
|
goto refuse_caps;
|
||||||
}
|
}
|
||||||
wrong_version:
|
wrong_version:
|
||||||
|
|
Loading…
Reference in a new issue