jpegdec is capable to parse input frames, but if jpegparse is before,
there's no need to reparse frames. This patch configure jpegdec as
packetized, skipping parsing, if negotiated sink caps has the boolean
field 'parsed' as true.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2464>
gst_jpeg_dec_set_format (GstVideoDecoder * dec, GstVideoCodecState * state)
{
GstJpegDec *jpeg = GST_JPEG_DEC (dec);
+ GstStructure *structure;
+ gboolean parsed = FALSE;
if (jpeg->input_state)
gst_video_codec_state_unref (jpeg->input_state);
jpeg->input_state = gst_video_codec_state_ref (state);
+ structure = gst_caps_get_structure (state->caps, 0);
+ gst_structure_get_boolean (structure, "parsed", &parsed);
+ gst_video_decoder_set_packetized (dec, parsed);
+
return TRUE;
}