[Bug 732266] vaapidecode: h264: add support for decoding SVC base layers only
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Fri Aug 18 00:46:37 UTC 2017
https://bugzilla.gnome.org/show_bug.cgi?id=732266
--- Comment #10 from Orestis Floros <orestisf1993 at gmail.com> ---
>From the spec:
> 7.4.1.2.3 Order of NAL units and coded pictures and association to access units
> ...
> NOTE 1 – Some bitstreams that conform to profiles specified in Annexes G or H may violate the NAL unit order specified in this clause. Conditions under which such a violation of the NAL unit order occurs are specified in clauses G.7.4.1.2.3 and H.7.4.1.2.3.
> ...
> The first of any of the following NAL units after the last VCL NAL unit of a primary coded picture specifies the start of a new access unit:
> - ...
> - NAL units with nal_unit_type in the range of 14 to 18, inclusive (when present),
> - ...
This is done in gst_h264_parse_collect_nal() for h264parse:
complete = h264parse->picture_start && (( ... ) || (nal_type >= 14 && nal_type
<= 18));
G.7.4.1.2.3 doesn't mention anything about prefix (nal_type = 14) units other
than:
> The following additional constraints shall be obeyed:
> – Each NAL unit with nal_unit_type equal to 1 or 5 shall be immediately preceded by a prefix NAL unit.
> – In bitstreams conforming to this Recommendation | International Standard, each prefix NAL unit shall be immediately followed by a NAL unit with nal_unit_type equal to 1 or 5.
but:
> G.3.42 prefix NAL unit: A NAL unit with nal_unit_type equal to 14 that immediately precedes in decoding order a NAL unit with nal_unit_type equal to 1 or 5. The NAL unit that immediately succeeds the prefix NAL unit in decoding order is referred to as the associated NAL unit. The prefix NAL unit contains data associated with the associated NAL unit, which are considered to be part of the associated NAL unit.
> G.3.67 VCL NAL unit: A collective term for coded slice NAL units and prefix NAL units.
Now, I am not sure if this means that prefix units should be considered part of
the associated NAL unit and therefore not be used for AU detection in SVC
streams. If I change nal_type >= 14 to nal_type >= 15 in
gst_h264_parse_collect_nal() it solves all problems in SVC conformance
bitstreams relating to AU detection without playing with FRAME_{START,END}
flags in vaapih264dec.
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list