Last edited 2 months ago

How to verify the hardware video decoder and encoder activities

Applicable for STM32MP23x lines, STM32MP25x lines


To verify that VDEC and/or VENC hardware accelerator is well involved when decoding and/or encoding, one can check the number of interrupts. One interrupt is raised at each frame decoding/encoding.

# Encode 10 seconds of video at 30 fps
gst-launch-1.0 videotestsrc num-buffers=300 ! video/x-raw, width=640, height=480, framerate=30/1 ! encodebin profile="video/x-vp8" ! matroskamux ! filesink location=v_vp8_640x480_30fps.webm
cat /proc/interrupts | grep venc
94:        300          0 GIC-0 199 Level     480e0000.venc

300 interrupts for 300 frames encoded (10 seconds of video at 30 fps)

gst-play-1.0 v_vp8_640x480_30fps.webm
cat /proc/interrupts | grep vdec
93:        300          0 GIC-0 149 Level     480d0000.vdec

300 interrupts for 300 frames played (10 s of video at 30 fps)


Info white.png Information
More trace and debug information can be found in the article V4L2 video codec overview.