vaapidecode ranking

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

vaapidecode ranking

BGraaf

Hi,

 

I try to use avdec_h264 instead of vaapidecode in decodebin because of some issues in vaapidecode (artefact on j1800/j1900 Intel processors).

I use this code to ‘unregister’ vaapidecode:

 

void unreg_vaapi()

{

  GstRegistry* reg = gst_registry_get();

 

  GstPluginFeature* vaapi_decode = gst_registry_lookup_feature(reg, "vaapidecode");

  GstPluginFeature* avdec_decode = gst_registry_lookup_feature(reg, "avdec_h264");

 

  if(vaapi_decode == NULL)

  {

    g_print("vaapidecode not found\n");

    return;

  }

 

  if(avdec_decode == NULL) {

    g_print("avdec_h264 not found\n");

  }

  else

  {

    g_print("Rank of avdec_h264 is: %i\n", gst_plugin_feature_get_rank(avdec_decode));

    gst_object_unref(avdec_decode);

  }

 

  g_print("Rank of vaapidecode was: %i\n", gst_plugin_feature_get_rank(vaapi_decode));

  gst_plugin_feature_set_rank(vaapi_decode, GST_RANK_NONE);

  g_print("Rank of vaapidecode new: %i\n", gst_plugin_feature_get_rank(vaapi_decode));

 

  gst_object_unref(vaapi_decode);

 

}

 

But it doesn’t work as expected.

Before calling the function, vaapidecode is ranked f.e. on 267, after calling its 0.

But decodebin is using vaapidecode and not aved_h264.

Why?

 

After removing gstreamer-vaapi, avdec_h264 is used, so there should be something else to do.

Working totally without vaapi is not the solution, because I need this for SD-Material.

 

Regards

Bernhard

 


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: vaapidecode ranking

Victor Jaquez
On 04/27/16 at 12:25pm, Bernhard Graaf wrote:

> I try to use avdec_h264 instead of vaapidecode in decodebin because of some
> issues in vaapidecode (artefact on j1800/j1900 Intel processors).
>
> I use this code to 'unregister' vaapidecode:
>
> void unreg_vaapi()
> {
>   GstRegistry* reg = gst_registry_get();
>
>   GstPluginFeature* vaapi_decode = gst_registry_lookup_feature(reg,
> "vaapidecode");

[snip]

>   g_print("Rank of vaapidecode was: %i\n",
> gst_plugin_feature_get_rank(vaapi_decode));
>
>   gst_plugin_feature_set_rank(vaapi_decode, GST_RANK_NONE);
>
>   g_print("Rank of vaapidecode new: %i\n",
> gst_plugin_feature_get_rank(vaapi_decode));

I guess you should do the same for vaapidecodebin

vmjl
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

AW: vaapidecode ranking

BGraaf
Hi Victor,

Thanks a lot for helping!
Now it works

Bernhard

-----Ursprüngliche Nachricht-----
Von: gstreamer-devel [mailto:[hidden email]]
Im Auftrag von Víctor M. Jáquez L.
Gesendet: Mittwoch, 27. April 2016 15:03
An: Discussion of the development of and with GStreamer
Betreff: Re: vaapidecode ranking

On 04/27/16 at 12:25pm, Bernhard Graaf wrote:
> I try to use avdec_h264 instead of vaapidecode in decodebin because of
some

> issues in vaapidecode (artefact on j1800/j1900 Intel processors).
>
> I use this code to 'unregister' vaapidecode:
>
> void unreg_vaapi()
> {
>   GstRegistry* reg = gst_registry_get();
>
>   GstPluginFeature* vaapi_decode = gst_registry_lookup_feature(reg,
> "vaapidecode");

[snip]

>   g_print("Rank of vaapidecode was: %i\n",
> gst_plugin_feature_get_rank(vaapi_decode));
>
>   gst_plugin_feature_set_rank(vaapi_decode, GST_RANK_NONE);
>
>   g_print("Rank of vaapidecode new: %i\n",
> gst_plugin_feature_get_rank(vaapi_decode));

I guess you should do the same for vaapidecodebin

vmjl
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel