Encoder - 10 bit?

Hi,

I am a bit confused about the published specs of the encoder on xavier nx and agx.

the encoder is capable of 10 bit HEVC… right?

Does the support of realtime 10 bit HEVC encoding matter, if the ISP is outputting only to a 8-bit YUV420 format ?

To clarify: it’s not possible to actually output a 10-bit HEVC file, because the encoder outputs 8bits only - right?

thank you
Jeffrey

Hi,
Yes, if your source is Bayer sensor and use nvarguscamerasrc, it is not meaningful to do 10-bit HEVC encoding.

So if your source supports YUV420 10-bit, you can utilize appsrc to run like

appsrc ! video/x-raw,format=P010_10LE ! nvvidconv ! 'video/x-raw(memory:NVMM),format=P010_10LE' ! nvv4l2h265enc ! ... 

OK… But we tried to build a camera via pci-express (not mipi) and that didn’t work either, as 1) we couldn’t use the ISP from RAM, and 2) there was an undocumented (and unacknowledged from nvidia!) IOMMU bug that crashed the whole system.

so WHY do you have a 10-bit encoder there, exactly? In what scenario can it possibly be used?

Why don’t you widen the ISP to 10bits?

Just to be clear: I WOULD LOVE TO ENCODE IN 10 BITS. There are TONS of cameras we could sell if the encoder actually let us create 10-bit HEVC video. So please help me understand, is there ANY scenario in which we can build a camera which utilizes this 10-bit HEVC encoder?

thank you for helping me understand this case!

Is anyone out there able to propose a workflow which will utilize the 10-bit HEVC encoder? Anyone?

Hi,
ISP output is 8-bit in current releases. 10-bit is not supported. We will check and evaluate to support this in future release.

Why aren’t you answering my question? I know the ISP is 8-bit, that is in THE ORIGINAL POST

Here is my question

DOES ANY PROCESS EXIST WHICH CAN RESULT IN 10 BIT VIDEO BEING ENCODED?

FOR EXAMPLE, MIPI-CSI CAMERA → GPU (ISP ON GPU) → ENCODER?

OR SOMETHING ELSE?

Hi,
A possible solution is

RAW frame capture through v4l2 -> CUDA buffer -> debayering via CUDA -> YUV420 10-bit NvBuffer -> NVENC

There is no existing sample for debayering via CUDA. You would need to implement it.