There I found that lossless encoding was not supported on Jetson TX1 for software version r24.2.1 but it will be provided in next releases. I try to achieve this with current release r28.1 using gstreamer and opencv but it seems to ignore qp-rang parameters:
I try to change parameters with your suggest and we achieve very high quality but not lossless. We have still few bits in wrong values but for our purpose we can live with that. I go another issue about hangs and segmentation fault using gstreamer:
640x360 gryscale - we can use quantization parameters 0 no problem
1280x720 gryscale - after about 20 captured frames we get segmentation fault and also ERROR: OMX Buffer too small
640x360 color - we can use quantization parameters 3 without problem
640x360 color - after about 20 captured frames we get segmentation fault and also ERROR: OMX Buffer too small
1280x720 gryscale - with default quantization parameters goes without problem
Is there any limitation about how high quality and with which resolution we can achieve?
P.S. We are using v4l2 for capturing USB cam → opencv (3.3 compiled vs gstreamer) to process it → gstreamer to save data.
We are using opencv compiled with gstreamer as library to write data so we are not using nvcamerasrc. In opencv pipeline I define frame to save as GRAY8 and this is send to nvvidconv. Propably nvvidconv conver it to normal RGB frame and as is is later pushed to omxh264enc. You can use gst-inspect-1.0 tool to check what format omxh264enc can support but from what I remember it can only have as source YUV or RGB format.
We decide to move to more powerful platform (we are experimenting also with DrivePX) because we will try to maintain multiple lossless FULL HD stream and TX1 seems to not be able to handle so much.