[qmlglsink] poor performances with 4K content on IMX8

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

[qmlglsink] poor performances with 4K content on IMX8

karimchtx
Hi,

I'm using qmlglsink for rendering video in Qt based application.
It's running both on Windows 10 and IMX8.

With a Full-HD content, it's smooth on both platforms.

With a 4K content:
 * it's smooth on my Windows workstation
 * it's damn slow/jerky on my IMX8 based board.

I thought about a pb with gl drivers.
But if I launch a pipeline from the command line such as:


gst-launch-1.0 -vvv souphttpsrc location=http://172.17.0.171/video/rev.mkv  ! matroskademux name=demux demux. ! h265parse ! queue ! v4l2h265dec ! queue ! imxvideoconvert_g2d ! kmssink driver-name=imx-drm

or

gst-launch-1.0 -vvv souphttpsrc location=http://172.17.0.171/video/rev.mkv  ! matroskademux name=demux demux. ! h265parse ! queue ! v4l2h265dec ! queue ! imxvideoconvert_g2d ! waylandsink

it is perfectly smooth.

So I guess something is maybe wrong in the qmlglsink ?

Did someone already test this plugin with a real 4K content ?

Thanks.

K.
Reply | Threaded
Open this post in threaded view
|

Re: [qmlglsink] poor performances with 4K content on IMX8

karimchtx
I made other tests today.

I have removed all the audio elements from my pipeline, just kept the video pipeline.

In C api, I've implemented a pipeline that looks like:

souphttpsrc location=http://172.17.0.171/video/rev.mkv  ! matroskademux name=demux demux. ! h265parse ! queue ! v4l2h265dec ! queue ! imxvideoconvert_g2d ! glsinkbin sink=qmlglsink

If I set sync=false to the sinkbin the video is smooth.
If I set sync=true...the video is very choppy and jerky....

The problem is that if I add the audio elements, I need to have "sync"=true in both audio and video sinks.
Otherwise, if I change the audio track...I finally have a gap between video and audio.

Any suggestion ?