10 Bit CUDA EGL Frame

Hi I would like to evaluate the TX2NX for processing 10bit video.

Is there a way to process P010_10LE frame with CUDA? Right now on the Nano I am passing 8bit frame in a similar manner to nvivafilter. It checks:

if (eglFrame.eglColorFormat == CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR) {
addLables((CUdeviceptr) eglFrame.frame.pPitch[0], (CUdeviceptr) eglFrame.frame.pPitch[1], eglFrame.pitch, eglFrame.width, eglFrame.height);

CUDA Driver API :: CUDA Toolkit Documentation (nvidia.com)
does not list 10bit planar YUV. Would cuGraphicsEGLRegisterImage or cuGraphicsResourceGetMappedEglFrame fail?

Or would I even be able to create EGLImage from 10bit buffer? with NvEGLImageFromFd


Could you try NvBufferColorFormat_NV12_10LE?

Thank you @AastaLLL

I should have mentioned I do not have a TX2 to test this. I haven’t had success creating a 10-bit buffer with Nano.

I see


but UV byte order is wrong.

As far as I can tell, P010_10LE is CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR

I set up a debug print:

if (eglFrame.eglColorFormat ==

and ran the pipeline:

gst-launch-1.0 videotestsrc is-live=true ! ‘video/x-raw,format=P010_10LE’ ! nvvidconv2 ! fakesink

Output is:

Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Pipeline is PREROLLED …
Setting pipeline to PLAYING …
New clock: GstSystemClock
NvDdkVicConfigure Failed
nvbuffer_transform Failed
gst_nvvconv_transform: NvBufferTransform Failed
ERROR: from element /GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0: Internal data stream error.
Additional debug info:
…/subprojects/gstreamer/libs/gst/base/gstbasesrc.c(3132): gst_base_src_loop (): /GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0:
streaming stopped, reason error (-5)
Execution ended after 0:00:00.060643959
Setting pipeline to NULL …
Freeing pipeline …


Have you tried NvBufferColorFormat_NV12_10LE?
Is it working?

Suppose you are using JetPack 4.6.4, is that correct?

The above example is with NvBufferColorFormat_NV12_10LE.
It is not working because I ran it on Nano. I know the Nano can’t do 10-bit nvbuffers. I do not have a TX2.

I think this test was JetPack 4.6.3


Nano doesn’t have 10-bit support.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.