I try to use Gstreamer for video encoding on my AGX Xavier board, My goal is to use the best encoding technique available. For my tests, I use the following instruction:
gst-launch-1.0 multifilesrc location="./image_raw/frame%01.jpg" index=0 caps="image/jpeg,framerate=20/1" ! jpedec ! videoconvert ! videorate ! nvvidconv ! 'video/x-raw(memory:NVMM)' ! omxh264enc control-rate=0 qp-range=0,1:0,1:0,1 quant-i-frame=0 quant-p-frame=0 ! mp4mux ! filesink location=test_video.mp4
The images I use for encoding are in 4k quality.
This instruction works very well, but my problem is that when I look for the CPU and GPU consumption, it gives me a means value of 25 % for CPU and 3 % for GPU (I’m in max performance mode).
As far as I understand, this website : https://docs.nvidia.com/jetson/l4t-multimedia/index.html explains that Gstreamer inderectly use GPU hardware component in order to work.
So my question is : is it normal to have a such low level of GPU consumption using Gstreamer, and is it possible to boost it ?
Thanks for sharing knowledge !