Hardware encoder on Jetson TX2


I am newbie on Jetson TX2 and I need to know the different ways we can use to access/to use the hardware encoding on Jetson TX2 and which way is the best to use ?

Thank for helping me to ask this question.


H Nostalgie, the Jetson’s hardware codec (encoder/decoder) is typically accessed using GStreamer, please consult the L4T Accelerated GStreamer User Guide for example pipelines that you can try.

There is also lower-level programmatic access via V4L2 API (in C), samples for this are included in JetPack’s Multimedia SDK which gets installed to Jetson TX1/TX2 by default.

Hello dusty-nv,

Thank you for your response. Is there any user guide or detailed documentation for the V4L2 API.


There are V4L2-based samples/docs included in the Multimedia SDK that gets installed to Jetson by JetPack, also see the upstream V4L2 API docs since it’s a Linux standard:


Thanks for your help.


Hello Mr. dusty-nv,

I am so sorry for bothering you again, but I need a clarification please. Are the “lower-level programmatic access via V4L2 API” and the “MMAPI : Multimedia API” the same API.

Thanks in advance,

Yes, it is the same.

Is it possible to use the ffmpeg hardware accelerated encoding from the TX2? With encoders such as nvenc_h264

For HW accelerated H264 encoding with gstreamer on Jetson, you may use plugin omxh264enc instead.