I think there might be some signals crossed in the interpretion of NVMM.
When you build a GStreamer pipeline, for capturing a camera image using nvarguscamerasrc. You have to specify a frame buffer (W X H) as well as format.
If you look here you’ll see input / output formats from nvvidconv. On the list you’ll see NV12, I420, etc. I’m not sure what all the video formats that are supported, but I’ve seen both NV12 and I420 used in the examples found the NVIDIA Jetson Linux Developer Guide.
If you look at all the examples using nvarguscamerasrc, they all specify a format of NV12.
My understanding is that Nvidia modified some of the GStreamer Plugins to optimize hardware accelaration already. You don’t need to think about memory management and assignments, but I’m not all that bright…
Hopefully this answers your question.