diff options
author | Hou Qi <qi.hou@nxp.com> | 2021-03-01 14:32:40 +0800 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2021-03-03 16:42:14 +0000 |
commit | 60f36237aec656d5c4a7dab92fb078ff36f39b8c (patch) | |
tree | 3596f9fe501d241da67c030931b19e1054d73f9c | |
parent | 613e0a50fe0c3bd87b8e866ab65bc497dc8e9fc8 (diff) | |
download | gstreamer-plugins-good-60f36237aec656d5c4a7dab92fb078ff36f39b8c.tar.gz |
v4l2videodec: Do not expose profiles/levels in vp8/vp9 template caps
Vp8/vp9 supported profiles/levels are listed in decoder sink caps, but
there is no parser for these two formats and the demuxers also don't have
these information. It causes negotiation fail between demuxers and decoder
when check caps "accept = gst_caps_is_subset (caps, template_caps);".
To fix this, need to remove profiles/levels for vp8/vp9 formats in decoder
sink caps.
Fix #854
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/890>
-rw-r--r-- | sys/v4l2/gstv4l2videodec.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/v4l2/gstv4l2videodec.c b/sys/v4l2/gstv4l2videodec.c index 1420bd362..2eb07571e 100644 --- a/sys/v4l2/gstv4l2videodec.c +++ b/sys/v4l2/gstv4l2videodec.c @@ -1214,7 +1214,8 @@ gst_v4l2_video_dec_register (GstPlugin * plugin, const gchar * basename, continue; } - if (cdata->codec != NULL) { + if (cdata->codec != NULL && cdata->codec != gst_v4l2_vp8_get_codec () + && cdata->codec != gst_v4l2_vp9_get_codec ()) { GValue value = G_VALUE_INIT; if (gst_v4l2_codec_probe_levels (cdata->codec, video_fd, &value)) { |