CODA VPU initialization failure with Gstreamer

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

CODA VPU initialization failure with Gstreamer

João Rodrigues

Hello.

I am trying to use GStreamer in an iMX.6 SoC with the mainline kernel (4.13.x), with the aid of the CODA vpu driver.

Although, when i run gst-launch-1.0 playbin uri=file:///home/root/test.mp4, i always get the following kernel message:

[  386.336530] coda 2040000.vpu: CODA_COMMAND_SEQ_INIT timeout

I have tried various things by now, but was never able to generate an output.

I can only generate an output on my screen with gst-launch-1.0 videotestsrc ! autovideosink (fbdevsink also works)

Looking forward for a solution

Extra debug info:

CODA is initialized properly by the kernel;

the sink used by gstreamer is imxg2dvideosink (Which i think it is one of the sources of the issue)

CMA memory is set to 64MB (320 MB does not fix it)

Gstreamer ver - 1.8.0

 

In the meantime I have tried with GStreamer 1.12, same results

 

Best regards,

João Rodrigues

 

 

 


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

Re: CODA VPU initialization failure with Gstreamer

Nicolas Dufresne-5
CODA code name is usually used to speak about mainline kernel, but you seem to use gstreamer-imx wich only works with downstream kernel. Would it be possible to clarify ?

Le 9 oct. 2017 10:55 AM, "João Rodrigues" <[hidden email]> a écrit :

Hello.

I am trying to use GStreamer in an iMX.6 SoC with the mainline kernel (4.13.x), with the aid of the CODA vpu driver.

Although, when i run gst-launch-1.0 playbin uri=file:///home/root/test.mp4, i always get the following kernel message:

[  386.336530] coda 2040000.vpu: CODA_COMMAND_SEQ_INIT timeout

I have tried various things by now, but was never able to generate an output.

I can only generate an output on my screen with gst-launch-1.0 videotestsrc ! autovideosink (fbdevsink also works)

Looking forward for a solution

Extra debug info:

CODA is initialized properly by the kernel;

the sink used by gstreamer is imxg2dvideosink (Which i think it is one of the sources of the issue)

CMA memory is set to 64MB (320 MB does not fix it)

Gstreamer ver - 1.8.0

 

In the meantime I have tried with GStreamer 1.12, same results

 

Best regards,

João Rodrigues

 

 

 


_______________________________________________
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
Reply | Threaded
Open this post in threaded view
|

RE: CODA VPU initialization failure with Gstreamer

João Rodrigues
In reply to this post by João Rodrigues

> CODA code name is usually used to speak about mainline kernel, but you seem

> to use gstreamer-imx wich only works with downstream kernel. Would it be

> possible to clarify ?

 

I should’ve clarified, apologies.

 

The first message was one of my first tests with mainline. Later I found out imx plugins are no-good for mainline and used GStreamer 1.12 OR GStreamer 1.8 without imx plugins. The point is: every pipeline I try to use gives the output I can’t initialize CODA.

 

I can only obtain an ouput when using test sources.

 

I tried to patch CODA with various patches published around mainline kernel mailing lists, got no success while doing it. Always get stuck in the init step of CODA. Actually, if I apply [media] coda: fix decoder sequence init escape flag I brick my board (have to reset it) every time I try to initialize CODA.

 

Hope this helps to clarify the issue

 

Best Regards,

João Rodrigues

 

 

 

 


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

Re: CODA VPU initialization failure with Gstreamer

Fabio Estevam
In reply to this post by João Rodrigues
Hi João,

On Mon, Oct 9, 2017 at 10:59 AM, João Rodrigues <[hidden email]> wrote:

> Hello.
>
> I am trying to use GStreamer in an iMX.6 SoC with the mainline kernel
> (4.13.x), with the aid of the CODA vpu driver.
>
> Although, when i run gst-launch-1.0 playbin uri=file:///home/root/test.mp4,
> i always get the following kernel message:
>
> [  386.336530] coda 2040000.vpu: CODA_COMMAND_SEQ_INIT timeout
>
> I have tried various things by now, but was never able to generate an
> output.
>
> I can only generate an output on my screen with gst-launch-1.0 videotestsrc
> ! autovideosink (fbdevsink also works)
>
> Looking forward for a solution
>
> Extra debug info:
>
> CODA is initialized properly by the kernel;
>
> the sink used by gstreamer is imxg2dvideosink (Which i think it is one of
> the sources of the issue)

You should use kmssink instead.

> CMA memory is set to 64MB (320 MB does not fix it)

I tried cma=128M on my tests.
>
> Gstreamer ver - 1.8.0
>
>
>
> In the meantime I have tried with GStreamer 1.12, same results

Today I managed to get Gstreamer 1.12.2 to work on imx6 with kernel 4.13.

I learned that we currently have some issues when the video file and
display resolutions do not match.

Then I tried playing a full HD video clip on a full HD HDMI screen.

Used this video sample from here:
http://linode.boundarydevices.com/videos/trailer_1080p_h264_mp3.avi

and this is the pipeline that worked:

# gst-launch-1.0 filesrc location=/root/trailer_1080p_h264_mp3.avi !
avidemux ! \
h264parse ! v4l2video1dec capture-io-mode=dmabuf ! kmssink connector-id=37    \
name=imx-drm sync=0

On my case I had to pass the 'connector-id' property to tell Gstreamer
that the output is the HDMI port instead of LVDS.

You can run 'modetest' command to know the connector id in case you
have multiple display ports.

Do you have an HDMI output on your board, so that you can run the same test?
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

RE: CODA VPU initialization failure with Gstreamer

João Rodrigues
In reply to this post by João Rodrigues
Hello Fabio,
 
I do have a HDMI port on my board. My board is an Apalis iMX6 from Toradex.
Although, the monitor I currently have does not support full 1080p definitions. Will that be an issue? I suppose it will be according to what you said.
 
I will still test it with the same conditions and report back to you.
 
Best Regards,
João Rodrigues

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

RE: CODA VPU initialization failure with Gstreamer

João Rodrigues
In reply to this post by João Rodrigues
Hello,
 
I would try this but my GStreamer 1.12 (gstreamer-plugins-bad) I’ve built from yocto does not have kmssink for some reason. I still have some bugs to work out here. Thank you all for your support, if I manage to get a video running I’ll update.
 
Best regards,
João Rodrigues

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

Re: CODA VPU initialization failure with Gstreamer

Fabio Estevam
In reply to this post by João Rodrigues
Hi João,

On Tue, Oct 10, 2017 at 4:45 AM, João Rodrigues <[hidden email]> wrote:
> Hello Fabio,
>
> I do have a HDMI port on my board. My board is an Apalis iMX6 from Toradex.
>
> Although, the monitor I currently have does not support full 1080p
> definitions. Will that be an issue? I suppose it will be according to what
> you said.

Jagan showed me the pipeline he is using on mx6 (check the readme.txt):
https://github.com/openedev/buildroot-amarula/commit/fde946266c752076a4225e49d512208431fa03fb#diff-cbdf64ab9b53e772d2d8d06db4eb8ae7

In this case he performs the resizing in software.

Regards,

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