I have an IMX477 camera connected to Jetson Orin Nano. The camera provides a normal colored video stream using a gst-launch script.
However, when I try to run the c++ examples provided in jetson-multimedia-api-reference, I get the yuv420p (YCbCr_420_888) frame with an ok Y plane, but the UV plane is all zeros (sized correctly). When I convert the .yuv image to .jpeg (via ffmpeg), the image is well-lit and detailed, but green. I tried setting a lower resolution and turning the IspStage off, but it changed nothing.
So far I tried the approaches in examples argus/samples/rawBayerOutput and argus/samples/yuvOneShot. For the first one i changed the pixelformat to yuv. But the RAW16 provided originally also didn’t seem to have any color. I changed almost nothing in the yuvOneShot example, just disabled the preview thread (running headless).
Hi,
Yes, it’s the reaspberry camera, Revision D.
I have a C++ application that processes, encodes, and forwards frames to various endpoints. I want to obtain frames in yuv420p, yes.
Bayer Raw camera sensors it’s by default processed by internal ISP as YUV420SP, (or, NV12).
for instance, here’s simple gst pipeline for launching camera to preview. $ gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM),framerate=30/1,format=NV12' ! nvvidconv ! xvimagesink
hence,
you may try adding video converter to covert from YUV420SP to YUV420P.
for example, $ gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM),framerate=30/1,format=NV12' ! nvvidconv ! 'video/x-raw, format=(string)I420, width=640, height=480' ! queue ! xvimagesink -e