Video encoding of video streams with Jetson AGX Xavier

Hi

I have a NVIDIA Jetson AGX Xavier and I need to perform hardware encoding for some h264 video streams.
My solution is based on FFMPEG with h264_nvenc encoder.
I read from this post that hardware encoding is currently not supported by Jetson AGX Xavier.
My first question is if it’s possible to have a timeline indicating when the hardware encoding will be supported.
Also, I would ask if you have any suggestion for other possible solutions (also with other software than FFMPEG) to perform encoding with high performances.

Thanks in advance

Hi,
There is a community contribution. Please check Jetson Nano FAQ
Q: Is hardware acceleration enabled in ffmpeg?
GitHub - jocover/jetson-ffmpeg: ffmpeg support on jetson nano

And please consider to use gstreamer or jetson_multimedia_api. Documents are in:
https://docs.nvidia.com/jetson/l4t/index.html#page/Tegra%2520Linux%2520Driver%2520Package%2520Development%2520Guide%2Faccelerated_gstreamer.html%23
https://docs.nvidia.com/jetson/l4t-multimedia/index.html

Hi,

thanks for your response.
I will evaluate the solution you suggested, the community contribution. I will perform some tests with it in order to understand if fit my case.

Also, I would understand if ffmpeg hardware encoding using h264_nvenc will be officialy supported in the future, and if there is a timeline, only to understand whether wait that will become supported or not in case the community contribution doesn’t fit my needs.

Thanks for the suppport

Hi,
The timeline is still uncertain. It would be great if you can take a look at jetson_multimedia_api. Both NVIDIA package and the community contribution are on the basis of the software frameworks.

Hi,

I read the jetson_multimedia_api page but community contribution seems to be more comfortable for my needs.
I’m trying to add h264_nvmpi in my ffmpeg pipeline, but I have problems with hwaccel and hwaccel_output_format pipeline parameters. In a pc with a NVIDIA GeForce RTX 2080 correct values are -hwaccel cuda -hwaccel_output_format cuda but on the Jetson Xavier with this values I have the following error:

Device creation failed: -12.
[rawvideo @ 0x5567eba390] No device available for decoder: device type cuda needed for codec rawvideo.

Can pelase suggest values to be specified for this parameters with h264_nvmpi on Jetson?

@DaneLLL I tested the decoding performance of jetson-ffmpeg on xaiver, but it is slower than using ffmpeg to decode directly. The nvdec hardware has been activated. Is there any reference for the decoding performance of jetson_multimedia_api?

Hi @ousheng5251
Please start a new topic and share steps for comparing the performance so that we can reproduce it and do investigation.

Is there a plan to provide a python binding

Hi,
So far we don’t have the plan. Sine the code is public, you may check and try to do development.