Capturing and Encoding HDMI Input maximum 10fps

Has anyone succeedded in grabing and encoding the HDMI input in realtime with at least 30 fps.
If I use gstreamer with the following command:
gst-launch-1.0 -e v4l2src device=/dev/video0 ! videoconvert ! video/x-raw,format=NV12,width=1920,height=1080 ! mpph265enc bps=20000000 bps-max=40000000 rc-mode=vbr ! h265parse ! mp4mux name=mux ! filesink location=hdmiin.mp4
(I am using latest armbian)

The output video is about 10 fps. I cannot figure out what is slowing down the framerate…
Any idea?

The reason for the slow frames per seconds is the videoconvert. It is done in software which leads to lots of framedrops… Any idea how to do videoconvert with rockchip hardware engine and gstreamer?

1 Like

I believe /dev/video-enc0 can be used for encoding video and /dev/video-dec0 can be used for decoding video. It is used by chrom(e/ium) OS Unittests at least, not sure about how to use them in applications, should maybe get a look at the unittest source code ?
https://chromium.googlesource.com/chromium/src.git/+/73.0.3639.0/docs/media/gpu/vdatest_usage.md