First we connected the USB camera and ran "v4l2-ctl -d /dev/video3 --list-formats-ext" to get the capability as below:
Index : 0
Type : Video Capture
Pixel Format: ‘MJPG’ (compressed)
Name : Motion-JPEG
Size: Discrete 3840x2160
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.040s (25.000 fps)
Interval: Discrete 0.050s (20.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 2560x1440
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.040s (25.000 fps)
Interval: Discrete 0.050s (20.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.200s (5.000 fps)
Size: Discrete 1920x1080
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.040s (25.000 fps)
Interval: Discrete 0.050s (20.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Interval: Discrete 0.100s (10.000 fps)
Interval: Discrete 0.200s (5.000 fps)
Second, ran the commands "gst-launch-1.0 -v v4l2src device=/dev/video3 ! image/jpeg, width=3840, height=2160, framerate=30/1, format=MJPG ! nvjpegdec ! xvimagesink" and "gst-launch-1.0 -v v4l2src device=/dev/video3 ! image/jpeg, width=1920, height=1080, framerate=30/1, format=MJPG ! nvjpegdec ! xvimagesink"; We found CPU rate was 50% when previewing the 1K video and CPU would get almost 100% when previewing 4K video. It looked like handing the video by CPU.
So I want to know if we can handle the video by hardware? Or my commands were wrong?
Thanks!