Hi. My goal is to receive the first decoded frame as soon as possible. What I observe at the API config level is this,we have two places where we setup number decode surfaces:
CUVIDPARSERPARAMS::ulMaxNumDecodeSurfaces
CUVIDDECODECREATEINFO::ulNumDecodeSurfaces
By default,at least in the NVIDIA decode sample the number for parser = 1 and for decoder = 20 .And what I see is that it takes the parser 20 calls to cause decoder spit a frame. So that means,if I set the CUVIDDECODECREATEINFO::ulNumDecodeSurfaces = 1,then I will get the first frame after the first call to the parser? If that’s true,I have another question. In my app,I perform decoding in separate thread.I cache the decoded CUVIDPARSERDISPINFO packets for further processing in another thread where I perform YUV to RGB conversion. If I set CUVIDDECODECREATEINFO::ulNumDecodeSurfaces = 1,will I still be able to cache the received frames? Or in this case I must decode → process in a sync manner?
Thanks.