NvQueue class


In the buffer_utils.c code of the Nvmedia_imgplay sample, I noticed that the NvQueue class is used to create the buffer for frames stored from the H264 decoder. Could I clarify if this class is first in first out instead of last in first out? This is because I have used this sample’s code to integrate with ROS in order to create a real-time image decoder, but found that the frames from the buffer seem to be rendering in reverse sequence in openGL.

Thanks in advance for the help!

Dear hleong,

Could you please help to check Creating NvMedia Capture and Display Surfaces in https://docs.nvidia.com/drive/active/ for your topic?

An application must set certain additional flags when it creates NvMedia images and video surfaces and feeds them to the NvMedia API:
• NvMediaICPFeedFrame (capture)
• NvMediaIDPFlip (display)
• NvMediaVideoOutputFlip (display)

Hi Steve,

The flags were set as described in the API, however, the video seems to be playing in reverse sequence for every new decoded frame. This seems to suggest the buffer is first in last out. Are there any other flags which could be set for the NvQueue class, or ways to verify whether the NvQueue class remains first in first out when taking input from a ROS stream?

Dear hleong,

Could you please check ipp_raw nvmedia sample source code for your topic?

On DrivePX2, please run ipp_raw sample with the following command if you have ar0231 rccb camera module.
cd /home/nvidia/drive-t186ref-linux/samples/nvmedia/ipp_raw/x11
./nvmipp_raw -cf …/drive-px2-a.conf -c dvp-ar0231-rccb-raw12-1920x1208-ab -d 0 --aggregate 1 --nvplugin