mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 11:41:09 +00:00
riff: Mark jpeg as parsed
This is needed so that autoplugging works with avidemux and JPEG decoders that need parsed sink caps (eg rockchip 'mppjpegdec' decoder). It also works fine with 'jpegdec' decoder regardless. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3175>
This commit is contained in:
parent
4e03c5f885
commit
9197235539
3 changed files with 20 additions and 8 deletions
File diff suppressed because one or more lines are too long
|
@ -172,7 +172,9 @@ gst_riff_create_video_caps (guint32 codec_fcc,
|
||||||
case GST_RIFF_dmb1:
|
case GST_RIFF_dmb1:
|
||||||
case GST_MAKE_FOURCC ('A', 'C', 'D', 'V'):
|
case GST_MAKE_FOURCC ('A', 'C', 'D', 'V'):
|
||||||
case GST_MAKE_FOURCC ('Q', 'I', 'V', 'G'):
|
case GST_MAKE_FOURCC ('Q', 'I', 'V', 'G'):
|
||||||
caps = gst_caps_new_empty_simple ("image/jpeg");
|
caps =
|
||||||
|
gst_caps_new_simple ("image/jpeg", "parsed", G_TYPE_BOOLEAN, TRUE,
|
||||||
|
NULL);
|
||||||
if (codec_name)
|
if (codec_name)
|
||||||
*codec_name = g_strdup ("Motion JPEG");
|
*codec_name = g_strdup ("Motion JPEG");
|
||||||
break;
|
break;
|
||||||
|
@ -180,7 +182,9 @@ gst_riff_create_video_caps (guint32 codec_fcc,
|
||||||
case GST_RIFF_JPEG: /* generic (mostly RGB) MJPEG */
|
case GST_RIFF_JPEG: /* generic (mostly RGB) MJPEG */
|
||||||
case GST_RIFF_jpeg:
|
case GST_RIFF_jpeg:
|
||||||
case GST_MAKE_FOURCC ('j', 'p', 'e', 'g'): /* generic (mostly RGB) MJPEG */
|
case GST_MAKE_FOURCC ('j', 'p', 'e', 'g'): /* generic (mostly RGB) MJPEG */
|
||||||
caps = gst_caps_new_empty_simple ("image/jpeg");
|
caps =
|
||||||
|
gst_caps_new_simple ("image/jpeg", "parsed", G_TYPE_BOOLEAN, TRUE,
|
||||||
|
NULL);
|
||||||
if (codec_name)
|
if (codec_name)
|
||||||
*codec_name = g_strdup ("JPEG Still Image");
|
*codec_name = g_strdup ("JPEG Still Image");
|
||||||
break;
|
break;
|
||||||
|
@ -188,25 +192,33 @@ gst_riff_create_video_caps (guint32 codec_fcc,
|
||||||
case GST_MAKE_FOURCC ('P', 'I', 'X', 'L'): /* Miro/Pinnacle fourccs */
|
case GST_MAKE_FOURCC ('P', 'I', 'X', 'L'): /* Miro/Pinnacle fourccs */
|
||||||
case GST_RIFF_VIXL: /* Miro/Pinnacle fourccs */
|
case GST_RIFF_VIXL: /* Miro/Pinnacle fourccs */
|
||||||
case GST_RIFF_vixl:
|
case GST_RIFF_vixl:
|
||||||
caps = gst_caps_new_empty_simple ("image/jpeg");
|
caps =
|
||||||
|
gst_caps_new_simple ("image/jpeg", "parsed", G_TYPE_BOOLEAN, TRUE,
|
||||||
|
NULL);
|
||||||
if (codec_name)
|
if (codec_name)
|
||||||
*codec_name = g_strdup ("Miro/Pinnacle Motion JPEG");
|
*codec_name = g_strdup ("Miro/Pinnacle Motion JPEG");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GST_MAKE_FOURCC ('C', 'J', 'P', 'G'):
|
case GST_MAKE_FOURCC ('C', 'J', 'P', 'G'):
|
||||||
caps = gst_caps_new_empty_simple ("image/jpeg");
|
caps =
|
||||||
|
gst_caps_new_simple ("image/jpeg", "parsed", G_TYPE_BOOLEAN, TRUE,
|
||||||
|
NULL);
|
||||||
if (codec_name)
|
if (codec_name)
|
||||||
*codec_name = g_strdup ("Creative Webcam JPEG");
|
*codec_name = g_strdup ("Creative Webcam JPEG");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GST_MAKE_FOURCC ('S', 'L', 'M', 'J'):
|
case GST_MAKE_FOURCC ('S', 'L', 'M', 'J'):
|
||||||
caps = gst_caps_new_empty_simple ("image/jpeg");
|
caps =
|
||||||
|
gst_caps_new_simple ("image/jpeg", "parsed", G_TYPE_BOOLEAN, TRUE,
|
||||||
|
NULL);
|
||||||
if (codec_name)
|
if (codec_name)
|
||||||
*codec_name = g_strdup ("SL Motion JPEG");
|
*codec_name = g_strdup ("SL Motion JPEG");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case GST_MAKE_FOURCC ('J', 'P', 'G', 'L'):
|
case GST_MAKE_FOURCC ('J', 'P', 'G', 'L'):
|
||||||
caps = gst_caps_new_empty_simple ("image/jpeg");
|
caps =
|
||||||
|
gst_caps_new_simple ("image/jpeg", "parsed", G_TYPE_BOOLEAN, TRUE,
|
||||||
|
NULL);
|
||||||
if (codec_name)
|
if (codec_name)
|
||||||
*codec_name = g_strdup ("Pegasus Lossless JPEG");
|
*codec_name = g_strdup ("Pegasus Lossless JPEG");
|
||||||
break;
|
break;
|
||||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue