mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
vaapidecodebin: skips configuration once it's done
Skips configuration of creation of vpp/capsfilter and link them once it's done. Otherwise, it always fails when it's trying to re-start playback. https://bugzilla.gnome.org/show_bug.cgi?id=781573
This commit is contained in:
parent
5c3318227b
commit
26486c436a
2 changed files with 3 additions and 1 deletions
|
@ -302,7 +302,7 @@ gst_vaapi_decode_bin_configure (GstVaapiDecodeBin * vaapidecbin)
|
||||||
"max-size-buffers", vaapidecbin->max_size_buffers,
|
"max-size-buffers", vaapidecbin->max_size_buffers,
|
||||||
"max-size-time", vaapidecbin->max_size_time, NULL);
|
"max-size-time", vaapidecbin->max_size_time, NULL);
|
||||||
|
|
||||||
if (vaapidecbin->disable_vpp)
|
if (vaapidecbin->disable_vpp || vaapidecbin->configured)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
GST_INFO_OBJECT (vaapidecbin, "enabling VPP");
|
GST_INFO_OBJECT (vaapidecbin, "enabling VPP");
|
||||||
|
@ -357,6 +357,7 @@ gst_vaapi_decode_bin_configure (GstVaapiDecodeBin * vaapidecbin)
|
||||||
goto error_link_pad;
|
goto error_link_pad;
|
||||||
|
|
||||||
gst_object_unref (bin_srcpad);
|
gst_object_unref (bin_srcpad);
|
||||||
|
vaapidecbin->configured = TRUE;
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
|
|
|
@ -54,6 +54,7 @@ typedef struct _GstVaapiDecodeBin {
|
||||||
GstVaapiDeinterlaceMethod deinterlace_method;
|
GstVaapiDeinterlaceMethod deinterlace_method;
|
||||||
gboolean disable_vpp;
|
gboolean disable_vpp;
|
||||||
|
|
||||||
|
gboolean configured;
|
||||||
} GstVaapiDecodeBin;
|
} GstVaapiDecodeBin;
|
||||||
|
|
||||||
typedef struct _GstVaapiDecodeBinClass {
|
typedef struct _GstVaapiDecodeBinClass {
|
||||||
|
|
Loading…
Reference in a new issue