Glsinkbin with qmlglsink load CPU supposedly by glcolorconvert

Deymos s yarmolovichv at gmail.com
Sat May 27 11:22:09 UTC 2023


Hi, I'm trying to solve the problem of CPU congestion when playing 16
videos on the video wall, my pipeline looked like this initially:
rtspsrc ! decodebin(with d3d11h264dec) ! videoconvert ! glsinkbin
sink=qmlglsink

but, heavy CPU loads began, although they should not be with d3d11h264dec,
I found that the load comes from sink, specifically glcolorconvert, which
converts NV12 to RGBA.

I tried to redo the pipeline on rtspsrc ! decodebin ! d3d11upload !
d3d11colorconvert ! d3d11download ! glsinkbin sink=qmlglsink but
d3d11colorconvert cannot be explicitly set to convert NV12 to RGBA. I tried
adding caps to the glsinkbin static pad, but it didn't help, it still
doesn't convert.

Does anyone have any ideas how to make the video card convert color, and
not load the processor with it?

here is pipeline code: https://pastebin.com/h0b90NLx
here is pipeline dot:
https://drive.google.com/file/d/1dJVf92svdmnrQ8brayDT-zrKKA_IRboJ/view?usp=sharing
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20230527/4f0e9674/attachment.htm>


More information about the gstreamer-devel mailing list