This widget could not be displayed.
This widget could not be displayed.
This widget could not be displayed.
This widget could not be displayed.
    This widget could not be displayed.
This widget could not be displayed.

Problem with vpudec.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Problem with vpudec.

Jump to solution
12,511 Views
pinkisaharan
Contributor II

Hi All,

I am using iMX6q Sabre board for Smart Devices. I have compiled my code with all gstreamer plugins but still i am getting errors in video streaming.

I have entered the command:

gst-launch filesrc location=test.mp4 typefind=true ! aiurdemux ! vpudec ! filesink


And the error is like this:

ERROR: no element present 'vpudec'

I have also tried some other decoders present here in source code. but I am not able to stream any video.

gst-launch filesrc location=akiyo.mp4 ! mfw_mpeg4aspdecoder ! fbdevsink

and the error  is:

MPEG4_ASP_D_01.02.01  build on Dec  8 2011 18:23:35.

MFW_GST_MPEG4ASP_DECODER_PLUGIN 3.0.7 build on Jun  5 2013 12:55:34.

WARNING: erroneous pipeline: could not link mfw_gst_mpeg4asp_decoder_info_t0 to fbdevsink0..

Can anybody help me in solving this issue and tell me how to enable the vpudec & vpuenc.

Thanks..

Labels (1)
1 Solution
9,557 Views
LeonardoSandova
Specialist I

You still do not have the vpudec. Also, are you following the Multimedia User Guide to enable & compile all GST stuff?

No idea about those logs you are seeing :smileysad:

For step 2, the patch is attached on my previous post. Just prep the package (good plugins), move to the source folder and apply the patch (patch -p1 < patch_name), then compile again (scbuild & scdeploy)

Leo

View solution in original post

11 Replies
9,557 Views
pinkisaharan
Contributor II

hi Leo,

I have tried with the 1st step told by you. but again i am getting the error:

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_pad_template_new: assertion `caps != NULL' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_class_add_pad_template: assertion `GST_IS_PAD_TEMPLATE (templ)' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_pad_template_new: assertion `caps != NULL' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_class_add_pad_template: assertion `GST_IS_PAD_TEMPLATE (templ)' failed

MAX resolution 1024x768

(gst-plugin-scanner:3270): GLib-GObject-WARNING **: cannot register existing type `GstAmrParse'

(gst-plugin-scanner:3270): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

(gst-plugin-scanner:3270): GLib-GObject-WARNING **: cannot register existing type `GstQTMux'

(gst-plugin-scanner:3270): GLib-GObject-CRITICAL **: g_type_set_qdata: assertion `node != NULL' failed

(gst-plugin-scanner:3270): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed

(gst-plugin-scanner:3270): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

(gst-plugin-scanner:3270): GLib-GObject-WARNING **: cannot register existing type `GstRtpSsrcDemux'

(gst-plugin-scanner:3270): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

(gst-plugin-scanner:3270): GLib-GObject-WARNING **: cannot register existing type `GstAacParse'

(gst-plugin-scanner:3270): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

(gst-plugin-scanner:3270): GLib-GObject-WARNING **: cannot register existing type `GstRTPMux'

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

WARNING: erroneous pipeline: no element "vpudec"

And in case of 2nd step, can you please tell the name of patch u have talked about or can give the link for that, whichever possible.

Thanks

0 Kudos
Reply
9,558 Views
LeonardoSandova
Specialist I

You still do not have the vpudec. Also, are you following the Multimedia User Guide to enable & compile all GST stuff?

No idea about those logs you are seeing :smileysad:

For step 2, the patch is attached on my previous post. Just prep the package (good plugins), move to the source folder and apply the patch (patch -p1 < patch_name), then compile again (scbuild & scdeploy)

Leo

9,557 Views
ak
Contributor I

Hello Leonardo,

Could you please point to good-plugins patch that you mentioned for step #2?

0 Kudos
Reply
9,557 Views
ak
Contributor I

Patch you referred is for ffmpeg plugin, I wanted to know if there is patch for gst-plugins-good (as quoted above) to fix following warnings:

-------------

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_pad_template_new: assertion `caps != NULL' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_class_add_pad_template: assertion `GST_IS_PAD_TEMPLATE (templ)' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_pad_template_new: assertion `caps != NULL' failed

(gst-plugin-scanner:3270): GStreamer-CRITICAL **: gst_element_class_add_pad_template: assertion `GST_IS_PAD_TEMPLATE (templ)' failed

MAX resolution 1024x768

(gst-plugin-scanner:3270): GLib-GObject-WARNING **: cannot register existing type `GstAmrParse'

--------------------

0 Kudos
Reply
9,557 Views
LeonardoSandova
Specialist I

Sorry, I did not read correctly. I am not aware of any patch to fix that warning.

Leo

0 Kudos
Reply
9,557 Views
ieio
Contributor IV

Hi Leonardo, I added the patch, it failed when applied to gst-plugins-good-0.10.30, but it successfully worked when applied to  gst-ffmpeg.

Now I can use software co/dedecs.

Thanks,

i.

0 Kudos
Reply
9,557 Views
LeonardoSandova
Specialist I

You still do not have the Freescale GStreamer plugins. Make sure you have selected the gst-fsl-plugins and build again. Then on the board, search for the FSL elements with gst-inspect (e.g. gst-inspect | grep vpu ).

Leo

0 Kudos
Reply
9,557 Views
pinkisaharan
Contributor II

hi Leo,

I have build with the gst-fsl-plugin and searched for the FSL elements with gst-inspect, But I am getting the error:

gst-inspect | grep vpu

(gst-plugin-scanner:3349): GStreamer-WARNING **: Failed to load plugin '/usr/lib/gstreamer-0.10/libgstffmpeg.so': /usr/lib/gstreamer-0.10/libgstffmpeg.so: undefined symbol: GST_FLOW_IS_FATAL

(gst-plugin-scanner:3349): GLib-GObject-WARNING **: cannot register existing type `GstAacParse'

(gst-plugin-scanner:3349): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

MAX resolution 1024x768

(gst-plugin-scanner:3349): GLib-GObject-WARNING **: cannot register existing type `GstQTMux'

(gst-plugin-scanner:3349): GLib-GObject-CRITICAL **: g_type_set_qdata: assertion `node != NULL' failed

(gst-plugin-scanner:3349): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion `G_TYPE_IS_INSTANTIATABLE (instance_type)' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

(gst-plugin-scanner:3349): GLib-GObject-WARNING **: cannot register existing type `GstRTPMux'

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_pad_template_new: assertion `caps != NULL' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_element_class_add_pad_template: assertion `GST_IS_PAD_TEMPLATE (templ)' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_pad_template_new: assertion `caps != NULL' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_element_class_add_pad_template: assertion `GST_IS_PAD_TEMPLATE (templ)' failed

(gst-plugin-scanner:3349): GLib-GObject-WARNING **: cannot register existing type `GstAmrParse'

(gst-plugin-scanner:3349): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

(gst-plugin-scanner:3349): GLib-GObject-WARNING **: cannot register existing type `GstRtpSsrcDemux'

(gst-plugin-scanner:3349): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(gst-plugin-scanner:3349): GStreamer-CRITICAL **: gst_element_register: assertion `g_type_is_a (type, GST_TYPE_ELEMENT)' failed

0 Kudos
Reply
9,557 Views
LeonardoSandova
Specialist I

Oh I see. The are some macros on the set of gst-ffmpeg plugins which somehow are not defined. You have two options:

1. In case you do not need any gst-ffmpegs elements, you can remove all related plugins. In case you have your rootfs NFS mounted ( ./ltib -m clean -p gst-ffmpeg) ,or simple remove it on the board's console (rm /usr/lib/gstreamer-0.10/./libgstffmpeg.so).

2. In case you need them, patch the attached file and build and deploy to the rootfs. The patch uses other defined macros.

Leo

9,557 Views
harald_krapfenb
Contributor III

Thanks Leo for the patch!

Just applied it to our i.MX6 Linux BSP.

Harald