: H264 encoder : high profile with 422 colorspace support.

We are using the Nvidia hardware h264 video encoding engine on Jetson TK1 , using firmware R21.4.
For our application, we have to set the H264 encoding profile to High (High 4:2:2) because we grab CSI input frames having a UYVY pixel format (Name: YUV422 (UYVY) packed ).

We did some tests with gstreamer-1.0 (ref and we are not able to set the h264 encoding profile(libnvomx always return OMX_IndexParamVideoProfileLevelCurrent not implemented).

Some research bring us to this topic describing the same issue.

On nvidia dev forum, it seems that an update of the can solve it, and you already provided it.

Can we please get a newer version of the for Tegra K1 that support H264 high profile encoding ?

Here is the dump of the file /etc/nv_tegra_release containing the SHA1 of the
root@tegra-ubuntu:~# cat /etc/nv_tegra_release

# R21 (release), REVISION: 4.0, GCID: 5650832, BOARD: ardbeg, EABI: hard, DATE: Thu Jun 25 22:38:59 UTC 2015
3afd51954af5246ad7139897f5f856b9c9748d99 */usr/lib/arm-linux-gnueabihf/tegra/

Any update to that topic ?

Does the HW H.264 encoder support H264 high profile encoding with UYUV 422 input ?

Hello, Romary:
For H264 high profile, 21.4 does not support. I will check internally whether it can be included in next release.

For UYVY (not UYUV, I guess) 422 input, it should be converted by nvvidconv before fed to omxh264enc.


Hello Chen,

Could you confirm that nvvidconv is a closed source gstreamer plugin that only use NEON instruction ?

Could you confirm that nvvidconv doesn’t use any other hardware (that neon) to compute image transformation ?


Hello, Romary:
nvvidconv is a hardware-accelerated engine for image conversion. The main task of this module is done by hardware, not CPU.