Il giorno lun 2 ott 2023 alle ore 06:41 Vivek Kasireddy
<vivek.kasire...@intel.com> ha scritto:
>
> From: Jin Chung Teng <jin.chung.t...@intel.com>
>
> If playbin3 is available (checked in Gstreamer registry), it
> makes sense to prefer it given the major improvements and
> features it offers including the capability to handle higher
> bitrates.
>
> v2: (Frediano)
> - Cache the playbin3 is available check
> - Keep the playbin name for playbin3 element as well
>
> Cc: Frediano Ziglio <fredd...@gmail.com>
> Cc: Dongwon Kim <dongwon....@intel.com>
> Cc: Hazwan Arif Mazlan <hazwan.arif.maz...@intel.com>
> Signed-off-by: Jin Chung Teng <jin.chung.t...@intel.com>
> Signed-off-by: Vivek Kasireddy <vivek.kasire...@intel.com>
> ---
>  src/channel-display-gst.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/src/channel-display-gst.c b/src/channel-display-gst.c
> index 36db3a3..5c9927b 100644
> --- a/src/channel-display-gst.c
> +++ b/src/channel-display-gst.c
> @@ -495,11 +495,17 @@ static gboolean create_pipeline(SpiceGstDecoder 
> *decoder)
>      GstElement *playbin, *sink;
>      SpiceGstPlayFlags flags;
>      GstCaps *caps;
> +    static bool playbin3_supported = true;
>
> -    playbin = gst_element_factory_make("playbin", "playbin");
> +    playbin = playbin3_supported ?
> +              gst_element_factory_make("playbin3", "playbin") : NULL;
>      if (playbin == NULL) {
> -        spice_warning("error upon creation of 'playbin' element");
> -        return FALSE;
> +        playbin3_supported = false;
> +        playbin = gst_element_factory_make("playbin", "playbin");
> +        if (playbin == NULL) {
> +            spice_warning("error upon creation of 'playbin' element");
> +            return FALSE;
> +        }
>      }
>
>      /* Passing the pipeline to widget, try to get window handle and

Acked

Frediano

Reply via email to