h265parse: set interlace-mode=interleaved on interlaced content

interlace-mode=alternate is a special case of interlace-mode=interleaved
where the fields are split using two different buffers.

We should use the latter instead of the former to no break compat with
elements supporting only 'interleaved'.
Decoders producing alternate, such as OMX on the Zynq, should change the
interlace-mode on their output caps.

Fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/825

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1655>
This commit is contained in:
Guillaume Desmottes 2020-10-05 11:07:25 +02:00 committed by GStreamer Merge Bot
parent ca4a0273df
commit 75dc98cc08

View file

@ -2201,8 +2201,8 @@ gst_h265_parse_update_src_caps (GstH265Parse * h265parse, GstCaps * caps)
gst_caps_set_simple (caps, "profile", G_TYPE_STRING, profile, NULL);
if (sps->profile_tier_level.interlaced_source_flag)
gst_caps_set_simple (caps, "interlace-mode", G_TYPE_STRING, "alternate",
NULL);
gst_caps_set_simple (caps, "interlace-mode", G_TYPE_STRING,
"interleaved", NULL);
tier = get_tier_string (sps->profile_tier_level.tier_flag);
if (tier != NULL)