![]() |
libxcoder
3.5.1
|
Exported definitions related to resource management of NI T-408 devices. More...
#include "ni_defs_logan.h"
Go to the source code of this file.
Data Structures | |
struct | _ni_logan_rsrc_video_ref_cap |
struct | _ni_logan_device_queue |
struct | _ni_logan_device_video_capability |
struct | _ni_logan_sw_instance_info |
struct | _ni_logan_device_pool |
struct | _ni_logan_device_info |
struct | _ni_logan_device |
struct | _ni_logan_device_context |
struct | _ni_logan_card_info |
struct | card_info |
struct | hw_device_info |
Macros | |
#define | NI_LOGAN_MAX_PROFILE_NAME_LEN 128 |
#define | NI_LOGAN_MAX_LEVEL_NAME_LEN 64 |
#define | NI_LOGAN_MAX_ADDITIONAL_INFO_LEN 64 |
Typedefs | |
typedef struct _ni_logan_rsrc_video_ref_cap | ni_logan_rsrc_device_video_ref_cap_t |
typedef struct _ni_logan_device_queue | ni_logan_device_queue_t |
typedef struct _ni_logan_device_video_capability | ni_logan_device_video_capability_t |
typedef struct _ni_logan_sw_instance_info | ni_logan_sw_instance_info_t |
typedef struct _ni_logan_device_pool | ni_logan_device_pool_t |
typedef struct _ni_logan_device_info | ni_logan_device_info_t |
typedef struct _ni_logan_device | ni_logan_device_t |
typedef struct _ni_logan_device_context | ni_logan_device_context_t |
typedef struct _ni_logan_card_info | ni_logan_card_info_t |
typedef struct card_info | card_info_t |
typedef struct hw_device_info | hw_device_info_t |
Enumerations | |
enum | ni_codec_t { EN_H264 , EN_H265 } |
enum | ni_sw_instance_status_t { EN_IDLE , EN_ACTIVE } |
enum | ni_alloc_rule_t { EN_ALLOC_LEAST_LOAD , EN_ALLOC_LEAST_INSTANCE } |
Functions | |
LIB_API int | ni_logan_rsrc_init (int should_match_rev, int timeout_seconds) |
Initialize and create all resources required to work with NETINT NVMe transcoder devices. This is a high level API function which is used mostly with user application like FFMpeg that relies on those resources. In case of custom application integration, revised functionality might be necessary utilizing coresponding API functions. More... | |
LIB_API ni_logan_retcode_t | ni_logan_rsrc_refresh (int should_match_rev) |
Scan and refresh all resources on the host, taking into account hot-plugged and pulled out cards. More... | |
LIB_API int | ni_logan_find_device_index_by_name (void *device_pool, ni_logan_device_type_t device_type, const char *dev_name) |
the card with the card name like /dev/nvme0n1 get the device index. More... | |
LIB_API int | ni_logan_rsrc_get_local_device_list (char ni_logan_devices[][NI_LOGAN_MAX_DEVICE_NAME_LEN], int max_handles) |
Scans system for all NVMe devices and returns the system device names to the user which were identified as NETINT transcoder deivices. Names are suitable for OpenFile api usage afterwards. More... | |
LIB_API ni_logan_device_context_t * | ni_logan_rsrc_get_device_context (ni_logan_device_type_t type, int guid) |
Allocates and returns a pointer to ni_logan_device_context_t struct based on provided device_type and guid. To be used for load update and codec query. More... | |
LIB_API void | ni_logan_rsrc_free_device_context (ni_logan_device_context_t *p_ctxt) |
Free previously allocated device context. More... | |
LIB_API ni_logan_retcode_t | ni_logan_rsrc_list_devices (ni_logan_device_type_t device_type, ni_logan_device_info_t *p_device_info, int *p_device_count) |
List device(s) based on device type with full information including s/w instances on the system. More... | |
LIB_API ni_logan_retcode_t | ni_logan_rsrc_list_all_devices (ni_logan_device_t *p_device) |
List all devices with full information including s/w instances on the system. More... | |
LIB_API void | ni_logan_rsrc_print_all_devices_capability (void) |
Print detailed capability information of all devices on the system. More... | |
LIB_API ni_logan_device_info_t * | ni_logan_rsrc_get_device_info (ni_logan_device_type_t device_type, int guid) |
Query a specific device with detailed information on the system. More... | |
LIB_API int | ni_logan_rsrc_get_available_device (int width, int height, int frame_rate, ni_codec_t codec, ni_logan_device_type_t device_type, ni_logan_device_info_t *p_device_info) |
Get the least used device that can handle decoding or encoding a video stream of certain resolution/frame-rate/codec. More... | |
LIB_API int | ni_logan_rsrc_update_device_load (ni_logan_device_context_t *p_ctxt, int load, int sw_instance_cnt, const ni_logan_sw_instance_info_t sw_instance_info[]) |
Update the load value and s/w instances info of a specific decoder or encoder. This is used by resource management daemon to update periodically. More... | |
LIB_API ni_logan_device_context_t * | ni_logan_rsrc_allocate_auto (ni_logan_device_type_t device_type, ni_alloc_rule_t rule, ni_codec_t codec, int width, int height, int frame_rate, unsigned long *p_load) |
Allocate resources for decoding/encoding, based on the provided rule. More... | |
LIB_API ni_logan_device_context_t * | ni_logan_rsrc_allocate_direct (ni_logan_device_type_t device_type, int guid, ni_codec_t codec, int width, int height, int frame_rate, unsigned long *p_load) |
Allocate resources for decoding/encoding, by designating explicitly the device to use. More... | |
LIB_API ni_logan_device_context_t * | ni_logan_rsrc_allocate_simple_direct (ni_logan_device_type_t device_type, int guid) |
Allocate resources for decoding/encoding, by designating explicitly the device to use. do not track the load on the host side. More... | |
LIB_API void | ni_logan_rsrc_release_resource (ni_logan_device_context_t *p_ctxt, ni_codec_t codec, unsigned long load) |
Release resources allocated for decoding/encoding. function This must be called at the end of transcoding with previously assigned load value by allocate* functions. More... | |
LIB_API int | ni_logan_rsrc_check_hw_available (int guid, ni_logan_device_type_t device_type) |
check the NetInt h/w device in resource pool on the host. More... | |
LIB_API int | ni_logan_check_hw_info (hw_device_info_t *p_hw_device_info, int task_mode, int load_threshold, int task_num_threshold, ni_logan_device_type_t device_type, int resolution) |
check hw info, return the appropriate card number to use depends on the load&task_num&used resource More... | |
LIB_API int | ni_logan_rsrc_codec_is_available (int guid, ni_logan_device_type_t device_type) |
check the NetInt h/w device in resource pool on the host. More... | |
LIB_API int | ni_logan_rsrc_remove_device (const char *p_dev) |
Remove an NetInt h/w device from resource pool on the host. More... | |
LIB_API int | ni_logan_rsrc_add_device (const char *p_dev, int should_match_rev) |
Add an NetInt h/w device into resource pool on the host. More... | |
LIB_API ni_logan_device_pool_t * | ni_logan_rsrc_get_device_pool (void) |
Create and return the allocated ni_logan_device_pool_t struct. More... | |
LIB_API void | ni_logan_rsrc_free_device_pool (ni_logan_device_pool_t *p_device_pool) |
Free all resources taken by the device pool. More... | |
LIB_API void | ni_logan_rsrc_print_device_info (const ni_logan_device_info_t *p_device_info) |
Print the content of the ni_logan_device_info_t struct. More... | |
LIB_API int | ni_logan_rsrc_lock_and_open (int device_type, ni_lock_handle_t *lock) |
lock a file lock and open a session on a device More... | |
LIB_API int | ni_logan_rsrc_unlock (int device_type, ni_lock_handle_t lock) |
unlock a file lock More... | |
Exported definitions related to resource management of NI T-408 devices.
Definition in file ni_rsrc_api_logan.h.
#define NI_LOGAN_MAX_ADDITIONAL_INFO_LEN 64 |
Definition at line 40 of file ni_rsrc_api_logan.h.
#define NI_LOGAN_MAX_LEVEL_NAME_LEN 64 |
Definition at line 39 of file ni_rsrc_api_logan.h.
#define NI_LOGAN_MAX_PROFILE_NAME_LEN 128 |
Definition at line 38 of file ni_rsrc_api_logan.h.
typedef struct card_info card_info_t |
typedef struct hw_device_info hw_device_info_t |
typedef struct _ni_logan_card_info ni_logan_card_info_t |
typedef struct _ni_logan_device_context ni_logan_device_context_t |
typedef struct _ni_logan_device_info ni_logan_device_info_t |
typedef struct _ni_logan_device_pool ni_logan_device_pool_t |
typedef struct _ni_logan_device_queue ni_logan_device_queue_t |
typedef struct _ni_logan_device ni_logan_device_t |
typedef struct _ni_logan_rsrc_video_ref_cap ni_logan_rsrc_device_video_ref_cap_t |
typedef struct _ni_logan_sw_instance_info ni_logan_sw_instance_info_t |
enum ni_alloc_rule_t |
Enumerator | |
---|---|
EN_ALLOC_LEAST_LOAD | |
EN_ALLOC_LEAST_INSTANCE |
Definition at line 62 of file ni_rsrc_api_logan.h.
enum ni_codec_t |
Enumerator | |
---|---|
EN_H264 | |
EN_H265 |
Definition at line 50 of file ni_rsrc_api_logan.h.
Enumerator | |
---|---|
EN_IDLE | |
EN_ACTIVE |
Definition at line 56 of file ni_rsrc_api_logan.h.
LIB_API int ni_logan_check_hw_info | ( | hw_device_info_t * | p_hw_device_info, |
int | task_mode, | ||
int | load_threshold, | ||
int | task_num_threshold, | ||
ni_logan_device_type_t | device_type, | ||
int | resolution | ||
) |
check hw info, return the appropriate card number to use depends on the load&task_num&used resource
[out] | p_hw_device_info | : record the device info, including available card num and which card to select, and each card's informaton, such as, the load and task num |
[in] | task_mode | affect the scheduling strategy, 1 - both the load_num and task_num should consider, usually applied to live scenes 0 - only consider the task_num, donnot care the load_num |
[in] | load_threshold | : load threshold [0 - 100] |
[in] | task_num_threshold | : task threshold [0 - max_task_num(32)] |
[in] | device_type | 1:decode 2:encode |
[in] | resolution:it | is the product of width and height, i.e. widthxheight |
libxcoder query to get status info including load and instances;
Definition at line 3089 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_find_device_index_by_name | ( | void * | device_coders, |
ni_logan_device_type_t | device_type, | ||
const char * | dev_name | ||
) |
the card with the card name like /dev/nvme0n1 get the device index.
[in] | p_device_pool | Pointer to a caller allocated ni_logan_device_pool_t |
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[in] | devicename | device name |
Definition at line 228 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_add_device | ( | const char * | dev, |
int | should_match_rev | ||
) |
Add an NetInt h/w device into resource pool on the host.
[in] | p_dev | the NVMe device name |
[in] | should_match_rev | 0: transcoder firmware revision matching the library's version is NOT required for placing the transcoder into resource pool; 1: otherwise |
add the h/w device_info entry
Definition at line 3618 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_device_context_t* ni_logan_rsrc_allocate_auto | ( | ni_logan_device_type_t | device_type, |
ni_alloc_rule_t | rule, | ||
ni_codec_t | codec, | ||
int | width, | ||
int | height, | ||
int | frame_rate, | ||
unsigned long * | p_load | ||
) |
Allocate resources for decoding/encoding, based on the provided rule.
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[in] | rule | allocation rule |
[in] | codec | EN_H264 or EN_H265 |
[in] | width | width of video resolution |
[in] | height | height of video resolution |
[in] | frame_rate | video stream frame rate |
[out] | p_load | the load that will be generated by this encoding task. Returned only for encoder for now. |
Note: codec, width, height, fps need to be supplied for NI_LOGAN_DEVICE_TYPE_ENCODER only, they are ignored otherwize. Note: the returned ni_logan_device_context_t content is not supposed to be used by caller directly: should only be passed to API in the subsequent calls; also after its use, the context should be released by calling ni_logan_rsrc_free_device_context.
[in] | type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[in] | rule | allocation rule |
[in] | codec | EN_H264 or EN_H265 |
[in] | width | width of video resolution |
[in] | height | height of video resolution |
[in] | frame_rate | video stream frame rate |
[out] | p_load | the p_load that will be generated by this encoding task. Returned only for encoder for now. |
Note: codec, width, height, fps need to be supplied for NI_LOGAN_DEVICE_TYPE_ENCODER only, they are ignored otherwize. Note: the returned ni_logan_device_context_t content is not supposed to be used by caller directly: should only be passed to API in the subsequent calls; also after its use, the context should be released by calling ni_logan_rsrc_free_device_context.
retrieve the record and based on the allocation rule specified, find the least loaded or least number of s/w instances among the coders
get the individual device_info info and check the load/num-of-instances
Definition at line 2311 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_device_context_t* ni_logan_rsrc_allocate_direct | ( | ni_logan_device_type_t | device_type, |
int | guid, | ||
ni_codec_t | codec, | ||
int | width, | ||
int | height, | ||
int | frame_rate, | ||
unsigned long * | p_load | ||
) |
Allocate resources for decoding/encoding, by designating explicitly the device to use.
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[in] | guid | unique device (decoder or encoder) module id |
[in] | codec | EN_H264 or EN_H265 |
[in] | width | width of video resolution |
[in] | height | height of video resolution |
[in] | frame_rate | video stream frame rate |
[out] | p_load | the load that will be generated by this encoding task. Returned only for encoder for now. |
Note: codec, width, height, fps need to be supplied by encoder; they are ignored for decoder.
Note: the returned ni_logan_device_context_t content is not supposed to be used by caller directly: should only be passed to API in the subsequent calls; also after its use, the context should be released by calling ni_logan_rsrc_free_device_context.
call libxcoder to allocate a s/w instance on the specified h/w device_info; this might not be necessary as the actual allocation of s/w instance happens when decoding/encoding starts in the codec
update modelled load for encoder
Definition at line 2557 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_device_context_t* ni_logan_rsrc_allocate_simple_direct | ( | ni_logan_device_type_t | device_type, |
int | guid | ||
) |
Allocate resources for decoding/encoding, by designating explicitly the device to use. do not track the load on the host side.
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[in] | guid | unique device (decoder or encoder) module id |
Note: only need to specify the device type and guid and codec type
Note: the returned ni_logan_device_context_t content is not supposed to be used by caller directly: should only be passed to API in the subsequent calls; also after its use, the context should be released by calling ni_logan_rsrc_free_device_context.
Definition at line 2627 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_check_hw_available | ( | int | guid, |
ni_logan_device_type_t | device_type | ||
) |
check the NetInt h/w device in resource pool on the host.
[in] | guid | the global unique device index in resource pool device_type NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
Definition at line 2895 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_codec_is_available | ( | int | guid, |
ni_logan_device_type_t | device_type | ||
) |
check the NetInt h/w device in resource pool on the host.
[in] | guid | the global unique device index in resource pool device_type NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
Definition at line 2768 of file ni_rsrc_api_logan.cpp.
LIB_API void ni_logan_rsrc_free_device_context | ( | ni_logan_device_context_t * | p_device_context | ) |
Free previously allocated device context.
p_device_context | Pointer to previously allocated device context |
Definition at line 1664 of file ni_rsrc_api_logan.cpp.
LIB_API void ni_logan_rsrc_free_device_pool | ( | ni_logan_device_pool_t * | p_device_pool | ) |
Free all resources taken by the device pool.
[in] | p_device_pool | Poiner to a device pool struct |
Definition at line 3863 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_get_available_device | ( | int | width, |
int | height, | ||
int | frame_rate, | ||
ni_codec_t | codec, | ||
ni_logan_device_type_t | device_type, | ||
ni_logan_device_info_t * | p_device_info | ||
) |
Get the least used device that can handle decoding or encoding a video stream of certain resolution/frame-rate/codec.
[in] | width | width of video resolution |
[in] | height | height of video resolution |
[in] | frame_rate | video stream frame rate |
[in] | codec | EN_H264 or EN_H265 |
[in] | type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[out] | info | detailed device information. If is non-NULL, the device info is stored in the memory pointed to by it. |
Definition at line 2021 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_device_context_t* ni_logan_rsrc_get_device_context | ( | ni_logan_device_type_t | device_type, |
int | guid | ||
) |
Allocates and returns a pointer to ni_logan_device_context_t struct based on provided device_type and guid. To be used for load update and codec query.
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[in] | guid | GUID of the encoder or decoder device |
Note: The returned ni_logan_device_context_t content is not supposed to be used by caller directly: should only be passed to API in the subsequent calls; also after its use, the context should be released by calling ni_logan_rsrc_free_device_context.
get names of shared mem and lock by GUID
get names of shared mem and lock by GUID
Definition at line 1449 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_device_info_t* ni_logan_rsrc_get_device_info | ( | ni_logan_device_type_t | device_type, |
int | guid | ||
) |
Query a specific device with detailed information on the system.
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[in] | guid | unique device(decoder or encoder) id |
Note: Caller is responsible for releasing memory that was allocated for the returned pointer
Definition at line 1960 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_device_pool_t* ni_logan_rsrc_get_device_pool | ( | void | ) |
Create and return the allocated ni_logan_device_pool_t struct.
None |
Definition at line 307 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_get_local_device_list | ( | char | ni_logan_devices[][NI_LOGAN_MAX_DEVICE_NAME_LEN], |
int | max_handles | ||
) |
Scans system for all NVMe devices and returns the system device names to the user which were identified as NETINT transcoder deivices. Names are suitable for OpenFile api usage afterwards.
[out] | ni_logan_devices | List of device names identified as NETINT NVMe transcoders |
[in] | max_handles | Max number of device names to return |
Scans system for all NVMe devices and returns the system device names to the user which were identified as NETINT transcoder deivices. Names are suitable for OpenFile api usage afterwards.
[out] | ni_logan_devices | List of device names identified as NETINT NVMe transcoders |
[in] | max_handles | Max number of device names to return |
skip current and parent directory
Definition at line 115 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_init | ( | int | should_match_rev, |
int | timeout_seconds | ||
) |
Initialize and create all resources required to work with NETINT NVMe transcoder devices. This is a high level API function which is used mostly with user application like FFMpeg that relies on those resources. In case of custom application integration, revised functionality might be necessary utilizing coresponding API functions.
[in] | should_match_rev | 0: transcoder firmware revision matching the library's version is NOT required for placing the transcoder into resource pool; 1: otherwise timeout_seconds 0: No timeout amount, loop until init success or fail; else: timeout will fail init once reached |
Initialize and create all resources required to work with NETINT NVMe transcoder devices. This is a high level API function which is used mostly with user application like FFMpeg that relies on those resources. In case of custom application integration, revised functionality might be necessary utilizing coresponding API functions.
[in] | should_match_rev | 0: transcoder firmware revision matching the
|
list all XCoder devices under /dev/..
Supported FW API info
store the guid and number of coders in a shared memory too, for later retrieval; the guid is init'd based on value here, and will be changed based on resource distribution logic in resource allocation functions; re-order is not allowed
create the lock
create the lock for encoder
create the lock for decoder
retrieve decoder and encoder info and create shared memory and named lock accordingly, using NVMe "Identify Controller"
check whether Xcoder is supported and retrieve the xcoder info
retrieve decoder and encoder info and create shared memory and named lock accordingly, using NVMe "Identify Controller"
check whether Xcoder is supported and retrieve the xcoder info
add the h/w device_info entry
for each device_info module
if device supports xcoder
for each netint nvme device
Definition at line 542 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_retcode_t ni_logan_rsrc_list_all_devices | ( | ni_logan_device_t * | p_device | ) |
List all devices with full information including s/w instances on the system.
[out] | p_device | The device information returned. |
Note: Caller is responsible for allocating memory for "p_device".
Definition at line 1817 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_retcode_t ni_logan_rsrc_list_devices | ( | ni_logan_device_type_t | device_type, |
ni_logan_device_info_t * | p_device_info, | ||
int * | p_device_count | ||
) |
List device(s) based on device type with full information including s/w instances on the system.
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[out] | p_device | The device information returned. |
[out] | p_device_count | The number of ni_logan_device_info_t structs returned. |
Note: Caller is responsible for allocating memory for "p_device".
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
[out] | p_device | The device information returned. |
[out] | p_device_count | The number of ni_logan_device_info_t structs returned. |
Note: Caller is responsible for allocating memory for "p_device".
Definition at line 1694 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_lock_and_open | ( | int | device_type, |
ni_lock_handle_t * | lock | ||
) |
lock a file lock and open a session on a device
device_type | |
lock |
Definition at line 3894 of file ni_rsrc_api_logan.cpp.
LIB_API void ni_logan_rsrc_print_all_devices_capability | ( | void | ) |
Print detailed capability information of all devices on the system.
none |
print out coders in the order based on their guid
Definition at line 1916 of file ni_rsrc_api_logan.cpp.
LIB_API void ni_logan_rsrc_print_device_info | ( | const ni_logan_device_info_t * | p_device_info | ) |
Print the content of the ni_logan_device_info_t struct.
p_device_info | - pointer to the ni_logan_device_info_t struct to print |
Definition at line 1844 of file ni_rsrc_api_logan.cpp.
LIB_API ni_logan_retcode_t ni_logan_rsrc_refresh | ( | int | should_match_rev | ) |
Scan and refresh all resources on the host, taking into account hot-plugged and pulled out cards.
[in] | should_match_rev | 0: transcoder firmware revision matching the library's version is NOT required for placing the transcoder into resource pool; 1: otherwise |
Definition at line 1326 of file ni_rsrc_api_logan.cpp.
LIB_API void ni_logan_rsrc_release_resource | ( | ni_logan_device_context_t * | p_device_context, |
ni_codec_t | codec, | ||
unsigned long | load | ||
) |
Release resources allocated for decoding/encoding. function This must be called at the end of transcoding with previously assigned load value by allocate* functions.
[in/] | p_ctxt the device context | |
[in] | codec | EN_H264 or EN_H265 |
[in] | load | the load value returned by allocate* functions |
[in/] | p_ctxt the device context | |
[in] | codec | EN_H264 or EN_H265 |
[in] | load | the load value returned by allocate* functions |
Definition at line 2650 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_remove_device | ( | const char * | dev | ) |
Remove an NetInt h/w device from resource pool on the host.
[in] | p_dev | the NVMe device name |
Definition at line 3445 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_unlock | ( | int | device_type, |
ni_lock_handle_t | lock | ||
) |
unlock a file lock
device_type | |
lock |
Definition at line 3984 of file ni_rsrc_api_logan.cpp.
LIB_API int ni_logan_rsrc_update_device_load | ( | ni_logan_device_context_t * | p_device_context, |
int | load, | ||
int | sw_instance_cnt, | ||
const ni_logan_sw_instance_info_t | sw_instance_info[] | ||
) |
Update the load value and s/w instances info of a specific decoder or encoder. This is used by resource management daemon to update periodically.
[in] | p_ctxt | The device context returned by ni_logan_rsrc_get_device_context |
[in] | p_load | The latest load value to update |
[in] | sw_instance_cnt | Number of s/w instances |
[in] | sw_instance_info | Info of s/w instances |
[in] | p_ctxt | The device context returned by ni_logan_rsrc_get_device_context |
[in] | p_load | The latest load value to update |
[in] | sw_instance_cnt | Number of s/w instances |
[in] | sw_instance_info | Info of s/w instances |
Definition at line 2250 of file ni_rsrc_api_logan.cpp.