mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-25 01:30:38 +00:00
codecs: gstvp9statefulparser: do not carry over segmentation flags
Do not carry over segmentation flags from previous frames. The spec says in 7.2.10 that the feature data carry over from previous frames if not updated, but the flags do not. Consider what would happen if a flag B is to depend on a flag A, and B carries over as set from another frame. Further consider that A is now not set in this particular frame. This leads to the invalid state in which flag B is set but flag A isn't. This might cause the bitstream to be rejected by accelerators down the line. Fix it. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2203>
This commit is contained in:
parent
1039d70d18
commit
4900e3583a
1 changed files with 2 additions and 0 deletions
|
@ -690,6 +690,8 @@ parse_segmentation_params (GstBitReader * br, GstVp9SegmentationParams * params)
|
||||||
|
|
||||||
params->segmentation_update_map = 0;
|
params->segmentation_update_map = 0;
|
||||||
params->segmentation_update_data = 0;
|
params->segmentation_update_data = 0;
|
||||||
|
params->segmentation_temporal_update = 0;
|
||||||
|
params->segmentation_abs_or_delta_update = 0;
|
||||||
|
|
||||||
VP9_READ_BIT (params->segmentation_enabled);
|
VP9_READ_BIT (params->segmentation_enabled);
|
||||||
if (!params->segmentation_enabled)
|
if (!params->segmentation_enabled)
|
||||||
|
|
Loading…
Reference in a new issue