Logo
ApraPipes 1.0
Loading...
Searching...
No Matches
NVCodecResources Class Reference
Collaboration diagram for NVCodecResources:
Collaboration graph

Public Member Functions

 NVCodecResources (apracucontext_sp &cuContext)
 
void load ()
 
void load2 ()
 
void unload ()
 
void unlockOutputBitstream (NV_ENC_OUTPUT_PTR outputBitstream)
 
 ~NVCodecResources ()
 

Public Attributes

apracucontext_sp m_cuContext
 
boost::dll::shared_library m_lib
 
NV_ENCODE_API_FUNCTION_LIST m_nvenc
 
void * m_hEncoder
 
boost_deque< void * > m_qpCompletionEvent
 
boost_deque< void * > m_qpCompletionEventBusy
 
boost_deque< NV_ENC_OUTPUT_PTR > m_qBitstreamOutputBitstream
 
boost_deque< NV_ENC_OUTPUT_PTR > m_qBitstreamOutputBitstreamBusy
 
std::map< void *, NV_ENC_REGISTERED_PTR > registeredResources
 
boost_deque< frame_sp > m_mappedFrames
 
boost_deque< NV_ENC_INPUT_PTR > m_mappedResources
 
uint32_t m_nFreeOutputBitstreams
 
uint32_t m_nBusyOutputBitstreams
 
boost::condition m_wait_for_output
 
boost::condition m_not_empty
 
boost::mutex m_mutex
 
boost::object_pool< ExtFrameframe_opool
 

Constructor & Destructor Documentation

◆ NVCodecResources()

NVCodecResources::NVCodecResources ( apracucontext_sp & cuContext)
inline
Here is the call graph for this function:

◆ ~NVCodecResources()

NVCodecResources::~NVCodecResources ( )
inline
Here is the call graph for this function:

Member Function Documentation

◆ load()

void NVCodecResources::load ( )
inline

◆ load2()

void NVCodecResources::load2 ( )
inline
Here is the caller graph for this function:

◆ unload()

void NVCodecResources::unload ( )
inline
Here is the caller graph for this function:

◆ unlockOutputBitstream()

void NVCodecResources::unlockOutputBitstream ( NV_ENC_OUTPUT_PTR outputBitstream)
inline

Member Data Documentation

◆ frame_opool

boost::object_pool<ExtFrame> NVCodecResources::frame_opool

◆ m_cuContext

apracucontext_sp NVCodecResources::m_cuContext

◆ m_hEncoder

void* NVCodecResources::m_hEncoder

◆ m_lib

boost::dll::shared_library NVCodecResources::m_lib

◆ m_mappedFrames

boost_deque<frame_sp> NVCodecResources::m_mappedFrames

◆ m_mappedResources

boost_deque<NV_ENC_INPUT_PTR> NVCodecResources::m_mappedResources

◆ m_mutex

boost::mutex NVCodecResources::m_mutex

◆ m_nBusyOutputBitstreams

uint32_t NVCodecResources::m_nBusyOutputBitstreams

◆ m_nFreeOutputBitstreams

uint32_t NVCodecResources::m_nFreeOutputBitstreams

◆ m_not_empty

boost::condition NVCodecResources::m_not_empty

◆ m_nvenc

NV_ENCODE_API_FUNCTION_LIST NVCodecResources::m_nvenc

◆ m_qBitstreamOutputBitstream

boost_deque<NV_ENC_OUTPUT_PTR> NVCodecResources::m_qBitstreamOutputBitstream

◆ m_qBitstreamOutputBitstreamBusy

boost_deque<NV_ENC_OUTPUT_PTR> NVCodecResources::m_qBitstreamOutputBitstreamBusy

◆ m_qpCompletionEvent

boost_deque<void *> NVCodecResources::m_qpCompletionEvent

◆ m_qpCompletionEventBusy

boost_deque<void *> NVCodecResources::m_qpCompletionEventBusy

◆ m_wait_for_output

boost::condition NVCodecResources::m_wait_for_output

◆ registeredResources

std::map<void *, NV_ENC_REGISTERED_PTR> NVCodecResources::registeredResources

The documentation for this class was generated from the following file: