NVIDIA DRIVE OS Linux SDK API Reference

6.0.3 Release
nvmedia_iep_nvscisync.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019-2022, NVIDIA CORPORATION. All rights reserved. All
3  * information contained herein is proprietary and confidential to NVIDIA
4  * Corporation. Any use, reproduction, or disclosure without the written
5  * permission of NVIDIA Corporation is prohibited.
6  */
7 
16 #ifndef NVMEDIA_IEP_NVSCISYNC_H
17 #define NVMEDIA_IEP_NVSCISYNC_H
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #include "nvmedia_core.h"
24 #include "nvscisync.h"
25 #include "nvmedia_iep.h"
26 
38 #define NVMEDIA_IEP_NVSCISYNC_VERSION_MAJOR 1
39 
40 #define NVMEDIA_IEP_NVSCISYNC_VERSION_MINOR 1
41 
46 #define NVMEDIA_IEP_MAX_PRENVSCISYNCFENCES (3U)
47 
72  NvMediaVersion *version
73 );
74 
113  const NvMediaIEP *encoder,
114  NvSciSyncAttrList attrlist,
115  NvMediaNvSciSyncClientType clienttype
116 );
117 
118 
162  const NvMediaIEP *encoder,
163  NvMediaNvSciSyncObjType syncobjtype,
164  NvSciSyncObj nvscisync
165 );
166 
203  const NvMediaIEP *encoder,
204  NvSciSyncObj nvscisync
205 );
206 
241  const NvMediaIEP *encoder,
242  NvSciSyncObj nvscisyncEOF
243 );
244 
294  const NvMediaIEP *encoder,
295  const NvSciSyncFence *prenvscisyncfence
296 );
297 
346  const NvMediaIEP *encoder,
347  NvSciSyncObj eofnvscisyncobj,
348  NvSciSyncFence *eofnvscisyncfence
349 );
350 
387  const NvMediaIEP *encoder,
388  NvSciSyncObj nvscisyncSOF
389 );
390 
432  const NvMediaIEP *encoder,
433  NvSciSyncObj sofnvscisyncobj,
434  NvSciSyncFence *sofnvscisyncfence
435 );
436 
437 
438 /*
439  * \defgroup history_nvmedia_iep_nvscisync History
440  * Provides change history for the NvMedia IEP NvSciSync API
441  *
442  * \section history_nvmedia_iep_nvscisync Version History
443  *
444  * <b> Version 1.0 </b> April 03, 2019
445  * - Initial release
446  *
447  * <b> Version 1.1 </b> July 15, 2019
448  * - Add new API NvMediaIEPSetNvSciSyncObjforSOF and NvMediaIEPGetSOFNvSciSyncFence
449  *
450  */
453 #ifdef __cplusplus
454 } /* extern "C" */
455 #endif
456 
457 #endif /* NVMEDIA_IEP_NVSCISYNC_H */
NvMediaIEPUnregisterNvSciSyncObj
NvMediaStatus NvMediaIEPUnregisterNvSciSyncObj(const NvMediaIEP *encoder, NvSciSyncObj nvscisync)
Unregisters an NvSciSyncObj with NvMediaIEP.
nvmedia_core.h
NVIDIA Media Interface: Core
NvMediaIEPRec
Holds the image encoder object created by NvMediaIEPCreate.
Definition: tvmr/include/nvmedia_iep.h:61
NvMediaNvSciSyncObjType
NvMediaNvSciSyncObjType
Defines NvMedia NvSciSyncObj types.
Definition: tvmr/include/nvmedia_core.h:273
NvMediaIEPSetNvSciSyncObjforSOF
NvMediaStatus NvMediaIEPSetNvSciSyncObjforSOF(const NvMediaIEP *encoder, NvSciSyncObj nvscisyncSOF)
Specifies the NvSciSyncObj to be used for an SOF NvSciSyncFence.
NvSciSyncAttrList
struct NvSciSyncAttrListRec * NvSciSyncAttrList
A container constituting an NvSciSyncAttrList which contains:
Definition: nvscisync.h:314
nvscisync.h
NVIDIA Software Communications Interface (SCI) : NvSciSync
NvMediaVersion
Holds NvMedia version information.
Definition: tvmr/include/nvmedia_core.h:237
NvMediaIEPSetNvSciSyncObjforEOF
NvMediaStatus NvMediaIEPSetNvSciSyncObjforEOF(const NvMediaIEP *encoder, NvSciSyncObj nvscisyncEOF)
Specifies the NvSciSyncObj to be used for an EOF NvSciSyncFence.
NvMediaIEPRegisterNvSciSyncObj
NvMediaStatus NvMediaIEPRegisterNvSciSyncObj(const NvMediaIEP *encoder, NvMediaNvSciSyncObjType syncobjtype, NvSciSyncObj nvscisync)
Registers an NvSciSyncObj with NvMediaIEP.
NvMediaIEPFillNvSciSyncAttrList
NvMediaStatus NvMediaIEPFillNvSciSyncAttrList(const NvMediaIEP *encoder, NvSciSyncAttrList attrlist, NvMediaNvSciSyncClientType clienttype)
Fills the NvMediaIEP specific NvSciSync attributes.
nvmedia_iep.h
NVIDIA Media Interface: NvMedia Image Encode Processing API
NvMediaIEPInsertPreNvSciSyncFence
NvMediaStatus NvMediaIEPInsertPreNvSciSyncFence(const NvMediaIEP *encoder, const NvSciSyncFence *prenvscisyncfence)
Sets an NvSciSyncFence as a prefence for an NvMediaIEPFeedFrame() NvSciSyncFence operation.
NvMediaStatus
NvMediaStatus
Defines all possible error codes.
Definition: tvmr/include/nvmedia_core.h:180
NvMediaIEPNvSciSyncGetVersion
NvMediaStatus NvMediaIEPNvSciSyncGetVersion(NvMediaVersion *version)
Returns the version information for the NvMedia IEP NvSciSync library.
NvSciSyncFence
Defines the opaque NvSciSyncFence.
Definition: nvscisync.h:240
NvMediaIEPGetEOFNvSciSyncFence
NvMediaStatus NvMediaIEPGetEOFNvSciSyncFence(const NvMediaIEP *encoder, NvSciSyncObj eofnvscisyncobj, NvSciSyncFence *eofnvscisyncfence)
Gets EOF NvSciSyncFence for an NvMediaIEPFeedFrame() operation.
NvMediaIEPGetSOFNvSciSyncFence
NvMediaStatus NvMediaIEPGetSOFNvSciSyncFence(const NvMediaIEP *encoder, NvSciSyncObj sofnvscisyncobj, NvSciSyncFence *sofnvscisyncfence)
Gets SOF NvSciSyncFence for an NvMediaIEPFeedFrame() operation.
NvSciSyncObj
struct NvSciSyncObjRec * NvSciSyncObj
A Synchronization Object is a container holding the reconciled NvSciSyncAttrList defining constraints...
Definition: nvscisync.h:295
NvMediaNvSciSyncClientType
NvMediaNvSciSyncClientType
NvMedia NvSciSync Client Type.
Definition: tvmr/include/nvmedia_core.h:260