This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Is there hardware acceleration to encode video on the RK3399?

Hi,

I've been struggling with the OrangePi RK3399 for some time now.
My goal is to use it as a conference recorder (sound-in, hdmi-in and camera).
The problem I have is that ffmpeg is not up to the task of encoding the video in real time, so skipping frames.
At the end, I have 45 minutes videos "condensed" into 14 minutes videos.
To benchmark my different tries, I used:

ffmpeg -hwaccel vaapi -f v4l2 -pix_fmt nv12 -s 1920x1080 -r 30 -i /dev/video0 -c:v mjpeg -q:v 10 -an -y -frames 900 -vsync 2  ffmpeg-30fps-vaapi-HQ42.mov

ffmpeg has an introductory page regarding hardware acceleration: https://trac.ffmpeg.org/wiki/HWAccelIntro.
For me, the status is not really clear… As the “standard” ffmpeg version I’m using has VAAPI built-in, it maybe can use the hardware encoding/decoding part of the Mali GPU if the kernel is correctly configured and the right libraries are installed… or it’s maybe just a software implementation.
I don’t know.
There is an old wiki from Rockchip that says: 

Where we are

[…]Video: support H264 Hardware Codec. Interated in rootfs with gstreamer, ffmpeg. H264 decoder using VDPAU. H264 encoder using VAAPI.

So… hardware encoding with VAAPI on the RK3399 may exist to this day in the kernel, but what is the path to get it to work with the OrangePi RK3399?
Other tracks are using VDPAU, which is another acceleration, this time coming from the NVIDIA world…
So, what shall I do?


Thanks.