This page introduces how to use hardware decoding.
Only supoport Amlgoic 5.4/5.15 Kernel.
Here is an example to decode H264 file to NV12 and then encode to H264.
Decoding & encoding:
gst-launch-1.0 filesrc location=/home/khadas/bbb_sunflower_1080p_60fps_normal.mp4 ! qtdemux name=d d.video_0 ! h264parse ! v4l2h264dec ! video/x-raw,format=NV12 ! amlvenc ! h264parse ! filesink location=/home/khadas/h264dec.h264
Here is an example to decode H265 file to NV12 and then encode to H265.
Decoding & encoding:
gst-launch-1.0 filesrc location=/home/khadas/4K_6.1_2012.mkv ! matroskademux name=demux demux. ! h265parse ! v4l2h265dec ! video/x-raw,format=NV12 ! amlvenc ! h265parse ! filesink location=/home/khadas/h265dec.h265
An example to decode video from USB camera and encode to H264:
gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap num-buffers=300 ! image/jpeg,width=1280,height=720,framerate=30/1 ! jpegdec ! amlvenc ! h264parse ! filesink location=test_0.h264