In the comments/documentation inside v4l2_nv_extensions.h the memory types of the V4L2 Video Decoder is specified inside this table:
* ### Supported Memory Types * MEMORY | OUTPUT PLANE | CAPTURE PLANE * :------------------: | :----------: | :-----------: * V4L2_MEMORY_MMAP | Y | Y * V4L2_MEMORY_DMABUF | N | N * V4L2_MEMORY_USERPTR | N | N *
This table implicates that the memory type V4L2_MEMORY_DMABUF for the capture plane is not possible/allowed.
Yet the sample code for 00_video_decode explicitly sets up the capture plane to use DMABUF:
ctx->capture_plane_mem_type = V4L2_MEMORY_DMABUF;
inside set_defaults().
I wonder if the documentation has been outdated for a long time. Please update it to include the DMABUF for the decoder capture plane, and check if there are similar oversights. Thanks!