From fe21b750f94b26adeac5461dd8711da514706437 Mon Sep 17 00:00:00 2001 From: Hou Qi Date: Tue, 6 Jun 2023 09:24:37 +0800 Subject: [PATCH] v4l2videodec: treat MPEG 1 format as MPEG 2 Part-of: --- .../sys/v4l2/gstv4l2videodec.c | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/subprojects/gst-plugins-good/sys/v4l2/gstv4l2videodec.c b/subprojects/gst-plugins-good/sys/v4l2/gstv4l2videodec.c index facaf658b5..6a702fa1e1 100644 --- a/subprojects/gst-plugins-good/sys/v4l2/gstv4l2videodec.c +++ b/subprojects/gst-plugins-good/sys/v4l2/gstv4l2videodec.c @@ -1384,12 +1384,20 @@ G_STMT_START { \ gint mpegversion = 0; gst_structure_get_int (s, "mpegversion", &mpegversion); - if (mpegversion == 2) { - SET_META ("MPEG2"); - cdata->codec = gst_v4l2_mpeg2_get_codec (); - } else { - SET_META ("MPEG4"); - cdata->codec = gst_v4l2_mpeg4_get_codec (); + switch (mpegversion) { + /* MPEG 2 decoders supports MPEG 1 format */ + case 1: + case 2: + SET_META ("MPEG2"); + cdata->codec = gst_v4l2_mpeg2_get_codec (); + break; + case 4: + SET_META ("MPEG4"); + cdata->codec = gst_v4l2_mpeg4_get_codec (); + break; + default: + g_warning ("Unsupported MPEG Video version %i", mpegversion); + break; } } else if (gst_structure_has_name (s, "video/x-h263")) { SET_META ("H263");