How to shared SciBufObj between two function engines

Please provide the following info (tick the boxes after creating this topic):
Software Version
[*] DRIVE OS 6.0.5
DRIVE OS 6.0.4 (rev. 1)
DRIVE OS 6.0.4 SDK
other

Target Operating System
[*] Linux
QNX
other

Hardware Platform
DRIVE AGX Orin Developer Kit (940-63710-0010-D00)
DRIVE AGX Orin Developer Kit (940-63710-0010-C00)
[*] DRIVE AGX Orin Developer Kit (not sure its number)
other

SDK Manager Version
[*] 1.9.1.10844
other

Host Machine Version
[*] native Ubuntu Linux 20.04 Host installed with SDK Manager
native Ubuntu Linux 20.04 Host installed with DRIVE OS Docker Containers
native Ubuntu Linux 18.04 Host installed with DRIVE OS Docker Containers
other

Hi, is there a way to take the output SciBufObj of NvMedia2D as the input of NvMediaIEP? I created NvMedia2d and NvMediaIEP in one process. The output SciBufObj of NvMeida2d is created with the attributes list which is filled through NvMedia2DFillNvSciBufAttrList(). when I feed the SciBufObj to NvMediaIEP,NvMediaIEPFeedFrame() will not return NVMEDIA_STATUS_OK. But if I create SciBufObj with the attributes list filled by NvMediaIEPFillNvSciBufAttrList(), the IEP function will run well. So, how to share SciBufObj between NvMedia2D and NvMediaIEP?

Dear @neo.chen,
Is the application pipeline is srcBuf → nvm2D → dstBuf → Encoding?

and are you using same NvSciBufAttrList obj to fill 2D and IEP properties? If so, please check using seperate NvSciBufAttrList obj to fill 2d and IEP properties and do reconcile using NvSciBufAttrListReconcile() like below.

NvSciBufAttrList list2D;
NvSciBufAttrList listIEP;
NvSciBufAttrList lists[2];

lists[0] = list2D;
lists[1] = listIEP;

NvMedia2DFillNvSciBufAttrList(list2D);
NvMediaIEPFillNvSciBufAttrList(listIEP);

Reconcile(lists, 2U, ...);

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.