![]() |
libxcoder
3.5.1
|
Main NETINT device API file provides the ability to communicate with NI T-408 type hardware transcoder devices. More...
#include "ni_device_api_logan.h"
#include "ni_device_api_priv_logan.h"
#include "ni_nvme_logan.h"
#include "ni_util_logan.h"
#include "ni_rsrc_api_logan.h"
#include "ni_rsrc_priv_logan.h"
Go to the source code of this file.
Data Structures | |
struct | _ni_err_rc_txt_entry |
Macros | |
#define | atoi(p_str) ni_logan_atoi(p_str, &b_error) |
#define | atof(p_str) ni_logan_atof(p_str, &b_error) |
#define | atobool(p_str) (ni_logan_atobool(p_str, &b_error)) |
#define | OPT(STR) else if (!strcasecmp(name, STR)) |
#define | OPT2(STR1, STR2) else if (!strcasecmp(name, STR1) || !strcasecmp(name, STR2)) |
#define | atoi(p_str) ni_logan_atoi(p_str, &b_error) |
#define | atof(p_str) ni_logan_atof(p_str, &b_error) |
#define | atobool(p_str) (ni_logan_atobool(p_str, &b_error)) |
#define | OPT(STR) else if (!strcasecmp(name, STR)) |
#define | OPT2(STR1, STR2) else if (!strcasecmp(name, STR1) || !strcasecmp(name, STR2)) |
#define | COMPARE(STR1, STR2, STR3) |
#define | COMPARE_F(STR1, STR2, STR3) |
#define | CHECK2VAL(STR, VAL1, VAL2) |
#define | atoi(p_str) ni_logan_atoi(p_str, &b_error) |
#define | atof(p_str) ni_logan_atof(p_str, &b_error) |
#define | atobool(p_str) (ni_logan_atobool(p_str, &b_error)) |
#define | OPT(STR) else if (!strcasecmp(name, STR)) |
Typedefs | |
typedef struct _ni_err_rc_txt_entry | ni_logan_err2str_entry_t |
Functions | |
const char * | ni_logan_err2str (int err) |
Convert error numver into error messages. More... | |
ni_logan_session_context_t * | ni_logan_device_session_context_alloc_init (void) |
Allocates and initializes a new ni_logan_session_context_t struct. More... | |
void | ni_logan_device_session_context_free (ni_logan_session_context_t *p_ctx) |
Frees previously allocated session context. More... | |
void | ni_logan_device_session_context_init (ni_logan_session_context_t *p_ctx) |
Initialize already allocated session context to a known state. More... | |
void | ni_logan_device_session_context_clear (ni_logan_session_context_t *p_ctx) |
Clear already allocated session context to all zeros. More... | |
ni_event_handle_t | ni_logan_create_event (void) |
Create event and returnes event handle if successful. More... | |
void | ni_logan_close_event (ni_event_handle_t event_handle) |
Closes event and releases resources. More... | |
ni_device_handle_t | ni_logan_device_open (const char *p_dev, uint32_t *p_max_io_size_out) |
Opens device and returnes device device_handle if successful. More... | |
void | ni_logan_device_close (ni_device_handle_t device_handle) |
Closes device and releases resources. More... | |
ni_logan_retcode_t | ni_logan_device_capability_query (ni_device_handle_t device_handle, ni_logan_device_capability_t *p_cap) |
Queries device and returns device capability structure. More... | |
ni_logan_retcode_t | ni_logan_device_session_open (ni_logan_session_context_t *p_ctx, ni_logan_device_type_t device_type) |
Opens a new device session depending on the device_type parameter If device_type is NI_LOGAN_DEVICE_TYPE_DECODER opens decoding session If device_type is NI_LOGAN_DEVICE_TYPE_EECODER opens encoding session. More... | |
ni_logan_retcode_t | ni_logan_device_session_close (ni_logan_session_context_t *p_ctx, int eos_recieved, ni_logan_device_type_t device_type) |
Closes device session that was previously opened by calling ni_logan_device_session_open() If device_type is NI_LOGAN_DEVICE_TYPE_DECODER closes decoding session If device_type is NI_LOGAN_DEVICE_TYPE_EECODER closes encoding session. More... | |
ni_logan_retcode_t | ni_logan_device_session_flush (ni_logan_session_context_t *p_ctx, ni_logan_device_type_t device_type) |
Sends a flush command to the device ni_logan_device_session_open() If device_type is NI_LOGAN_DEVICE_TYPE_DECODER sends flush command to decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER sends flush command to decoder. More... | |
ni_logan_retcode_t | ni_logan_decoder_session_send_flush (ni_logan_session_context_t *p_ctx) |
Sends a flush command to the decoder ni_logan_device_session_open() More... | |
ni_logan_retcode_t | ni_logan_device_dec_session_save_hdrs (ni_logan_session_context_t *p_ctx, uint8_t *hdr_data, uint8_t hdr_size) |
Save a stream's headers in a decoder session that can be used later for continuous decoding from the same source. More... | |
LIB_API ni_logan_retcode_t | ni_logan_device_dec_session_flush (ni_logan_session_context_t *p_ctx) |
Flush a decoder session to get ready to continue decoding. More... | |
int | ni_logan_device_session_write (ni_logan_session_context_t *p_ctx, ni_logan_session_data_io_t *p_data, ni_logan_device_type_t device_type) |
Sends data the device If device_type is NI_LOGAN_DEVICE_TYPE_DECODER sends data packet to decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER sends data frame to encoder. More... | |
int | ni_logan_device_session_read (ni_logan_session_context_t *p_ctx, ni_logan_session_data_io_t *p_data, ni_logan_device_type_t device_type) |
Reads data the device If device_type is NI_LOGAN_DEVICE_TYPE_DECODER reads data packet from decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER reads data frame from encoder. More... | |
ni_logan_retcode_t | ni_logan_device_session_query (ni_logan_session_context_t *p_ctx, ni_logan_device_type_t device_type) |
Query session data from the device - Currently not implemented If device_type is NI_LOGAN_DEVICE_TYPE_DECODER query session data from decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER query session data from encoder. More... | |
ni_logan_retcode_t | ni_logan_frame_buffer_alloc (ni_logan_frame_t *p_frame, int video_width, int video_height, int alignment, int metadata_flag, int factor, int hw_frame_count) |
Allocate preliminary memory for the frame buffer for encoding based on provided parameters. Applicable to YUV420 Planar pixel format only, 8 or 10 bit/pixel. More... | |
ni_logan_retcode_t | ni_logan_decoder_frame_buffer_alloc (ni_logan_buf_pool_t *p_pool, ni_logan_frame_t *p_frame, int alloc_mem, int video_width, int video_height, int alignment, int factor) |
Allocate memory for decoder frame buffer based on provided parameters; the memory is retrieved from a buffer pool and will be returned to the same buffer pool by ni_logan_decoder_frame_buffer_free. Note: all attributes of ni_logan_frame_t will be set up except for memory and buffer, which rely on the pool being allocated; the pool will be allocated only after the frame resolution is known. More... | |
ni_logan_retcode_t | ni_logan_encoder_frame_buffer_alloc (ni_logan_frame_t *p_frame, int video_width, int video_height, int linesize[], int alignment, int extra_len, int factor) |
Allocate memory for the frame buffer for encoding based on given parameters, taking into account pic line size and extra data. Applicable to YUV420p AVFrame only. 8 or 10 bit/pixel. Cb/Cr size matches that of Y. More... | |
ni_logan_retcode_t | ni_logan_frame_buffer_free (ni_logan_frame_t *p_frame) |
Free frame buffer that was previously allocated with either ni_logan_frame_buffer_alloc or ni_logan_encoder_frame_buffer_alloc. More... | |
ni_logan_retcode_t | ni_logan_decoder_frame_buffer_free (ni_logan_frame_t *p_frame) |
Free decoder frame buffer that was previously allocated with ni_logan_decoder_frame_buffer_alloc, returning memory to a buffer pool. More... | |
void | ni_logan_decoder_frame_buffer_pool_return_buf (ni_logan_buf_t *buf, ni_logan_buf_pool_t *p_buffer_pool) |
Return a memory buffer to memory buffer pool. More... | |
ni_logan_retcode_t | ni_logan_packet_buffer_alloc (ni_logan_packet_t *p_packet, int packet_size) |
Allocate memory for the packet buffer based on provided packet size. More... | |
ni_logan_retcode_t | ni_logan_packet_buffer_free (ni_logan_packet_t *p_packet) |
Free packet buffer that was previously allocated with either ni_logan_packet_buffer_alloc. More... | |
int | ni_logan_packet_copy (void *p_destination, const void *const p_source, int cur_size, void *p_leftover, int *p_prev_size) |
Copy video packet accounting for allighment. More... | |
ni_logan_retcode_t | ni_logan_encoder_init_default_params (ni_logan_encoder_params_t *p_param, int fps_num, int fps_denom, long bit_rate, int width, int height) |
Initialize default encoder parameters. More... | |
ni_logan_retcode_t | ni_logan_decoder_init_default_params (ni_logan_decoder_params_t *p_param, int fps_num, int fps_denom, long bit_rate, int width, int height) |
Initialize default decoder parameters. More... | |
ni_logan_retcode_t | ni_logan_parse_reconf_file (const char *reconf_file, int hash_map[100][10]) |
ni_logan_retcode_t | ni_logan_decoder_params_set_value (ni_logan_decoder_params_t *p_params, const char *name, char *value) |
Set value referenced by name in decoder parameters structure. More... | |
ni_logan_retcode_t | ni_logan_encoder_params_set_value (ni_logan_encoder_params_t *p_params, const char *name, const char *value, ni_logan_session_context_t *ctx) |
Set value referenced by name in encoder parameters structure. More... | |
ni_logan_retcode_t | ni_logan_encoder_params_check (ni_logan_encoder_params_t *p_params, ni_logan_codec_format_t codec) |
Validate relationship of some params in encoder parameters structure. More... | |
ni_logan_retcode_t | ni_logan_encoder_gop_params_set_value (ni_logan_encoder_params_t *p_params, const char *name, const char *value) |
Set got parameter value referenced by name in encoder parameters structure. More... | |
int | ni_logan_get_num_reorder_of_gop_structure (ni_logan_encoder_params_t *p_params) |
Get GOP's max number of reorder frames. More... | |
int | ni_logan_get_num_ref_frame_of_gop_structure (ni_logan_encoder_params_t *p_params) |
Get GOP's number of reference frames. More... | |
ni_aux_data_t * | ni_logan_frame_new_aux_data (ni_logan_frame_t *frame, ni_aux_data_type_t type, int data_size) |
Add a new auxiliary data to a frame. More... | |
ni_aux_data_t * | ni_logan_frame_new_aux_data_from_raw_data (ni_logan_frame_t *frame, ni_aux_data_type_t type, const uint8_t *raw_data, int data_size) |
Add a new auxiliary data to a frame and copy in the raw data. More... | |
ni_aux_data_t * | ni_logan_frame_get_aux_data (const ni_logan_frame_t *frame, ni_aux_data_type_t type) |
Retrieve from the frame auxiliary data of a given type if exists. More... | |
void | ni_logan_frame_free_aux_data (ni_logan_frame_t *frame, ni_aux_data_type_t type) |
If auxiliary data of the given type exists in the frame, free it and remove it from the frame. More... | |
void | ni_logan_frame_wipe_aux_data (ni_logan_frame_t *frame) |
Free and remove all auxiliary data from the frame. More... | |
ni_logan_retcode_t | ni_logan_device_handle_map_SN (ni_device_handle_t device_handle, ni_logan_serial_num_t *p_serial_num) |
Queries device Serial number. More... | |
ni_logan_retcode_t | ni_logan_device_session_copy (ni_logan_session_context_t *src_p_ctx, ni_logan_session_context_t *dst_p_ctx) |
Copies existing decoding session params for hw frame usage. More... | |
int | ni_logan_device_session_read_hwdesc (ni_logan_session_context_t *p_ctx, ni_logan_session_data_io_t *p_data) |
Reads data from the device device_type should be NI_LOGAN_DEVICE_TYPE_DECODER, and reads data hwdesc from decoder when hw transcoding. More... | |
int | ni_logan_device_session_hwdl (ni_logan_session_context_t *p_ctx, ni_logan_session_data_io_t *p_data, ni_logan_hwframe_surface_t *hwdesc) |
Reads data from hw descriptor from decoder output buffer. More... | |
int | ni_logan_device_session_hwup (ni_logan_session_context_t *p_ctx, ni_logan_session_data_io_t *p_src_data, ni_logan_hwframe_surface_t *hwdesc) |
Writes data and reads back hw descriptor from decoder output buffer. More... | |
ni_logan_retcode_t | ni_logan_frame_buffer_alloc_hwenc (ni_logan_frame_t *p_frame, int video_width, int video_height, int extra_len) |
Allocate memory for the frame buffer based on provided parameters taking into account pic line size and extra data. Applicable to YUV420p AVFrame for hw only. More... | |
int | ni_calculate_total_frame_size (const ni_logan_session_context_t *p_upl_ctx, const int linesize[], const int heightsize[]) |
Calculate the total size of a frame based on the upload context attributes and includes rounding up to the page size. More... | |
int | ni_logan_device_session_acquire (ni_logan_session_context_t *p_ctx, ni_logan_frame_t *p_frame) |
Acquire a P2P frame buffer from the hwupload session. More... | |
ni_logan_retcode_t | ni_logan_uploader_frame_buffer_lock (ni_logan_session_context_t *p_upl_ctx, ni_logan_frame_t *p_frame) |
Lock a hardware P2P frame prior to encoding. More... | |
ni_logan_retcode_t | ni_logan_uploader_frame_buffer_unlock (ni_logan_session_context_t *p_upl_ctx, ni_logan_frame_t *p_frame) |
Unlock a hardware P2P frame after encoding. More... | |
ni_logan_retcode_t | ni_logan_uploader_p2p_test_send (ni_logan_session_context_t *p_upl_ctx, uint8_t *p_data, uint32_t len, ni_logan_frame_t *p_hwframe) |
Special P2P test API function. Copies YUV data from the software frame to the hardware P2P frame on the T408 device. More... | |
LIB_API ni_logan_retcode_t | ni_logan_encoder_set_input_frame_format (ni_logan_session_context_t *p_enc_ctx, ni_logan_encoder_params_t *p_enc_params, int width, int height, int bit_depth, int src_endian) |
Set the incoming frame format for the encoder. More... | |
ni_logan_retcode_t | ni_logan_decode_buffer_free (ni_logan_hwframe_surface_t *surface, ni_device_handle_t device_handle, ni_event_handle_t event_handle) |
Recycle a frame buffer on card. More... | |
int | ni_logan_device_session_init_framepool (ni_logan_session_context_t *p_ctx, uint32_t pool_size, uint32_t p2p_pool) |
Sends frame pool setup info to device. More... | |
ni_logan_retcode_t | ni_logan_frame_buffer_alloc_v4 (ni_logan_frame_t *p_frame, int pixel_format, int video_width, int video_height, int linesize[], int alignment, int extra_len) |
Allocate memory for the frame buffer based on provided parameters taking into account width, height, format, stride, alignment, and extra data. More... | |
ni_logan_retcode_t | ni_logan_frame_zerocopy_buffer_alloc (ni_logan_frame_t *p_frame, int video_width, int video_height, int linesize[], int extra_len, int factor, uint8_t *buffer[]) |
Allocate memory for the frame buffer based on provided parameters Applicable to use YUV420p AVFrame for zerocopy case. Allocat extra_len only. More... | |
LIB_API ni_logan_retcode_t | ni_logan_frame_zerocopy_check (const int width, const int height, const int linesize[], const int dst_stride[], const int src_height[], const int dst_height[], const int bit_depth_factor, const uint8_t *data[]) |
Check if incoming frame is encoder zero copy compatible or not. More... | |
LIB_API ni_logan_retcode_t | is_logan_fw_rev_higher (ni_logan_session_context_t *p_ctx, int fw_api_fla, int fw_api_ver) |
Check if logan firmware version is higher than expected api flavor and version. More... | |
Variables | |
const char *const | g_logan_xcoder_preset_names [NI_LOGAN_XCODER_PRESET_NAMES_ARRAY_LEN] |
const char *const | g_logan_xcoder_log_names [NI_LOGAN_XCODER_LOG_NAMES_ARRAY_LEN] |
Main NETINT device API file provides the ability to communicate with NI T-408 type hardware transcoder devices.
Definition in file ni_device_api_logan.c.
#define atobool | ( | p_str | ) | (ni_logan_atobool(p_str, &b_error)) |
Definition at line 3788 of file ni_device_api_logan.c.
#define atobool | ( | p_str | ) | (ni_logan_atobool(p_str, &b_error)) |
Definition at line 3788 of file ni_device_api_logan.c.
#define atobool | ( | p_str | ) | (ni_logan_atobool(p_str, &b_error)) |
Definition at line 3788 of file ni_device_api_logan.c.
#define atof | ( | p_str | ) | ni_logan_atof(p_str, &b_error) |
Definition at line 3787 of file ni_device_api_logan.c.
#define atof | ( | p_str | ) | ni_logan_atof(p_str, &b_error) |
Definition at line 3787 of file ni_device_api_logan.c.
#define atof | ( | p_str | ) | ni_logan_atof(p_str, &b_error) |
Definition at line 3787 of file ni_device_api_logan.c.
#define atoi | ( | p_str | ) | ni_logan_atoi(p_str, &b_error) |
Definition at line 3786 of file ni_device_api_logan.c.
#define atoi | ( | p_str | ) | ni_logan_atoi(p_str, &b_error) |
Definition at line 3786 of file ni_device_api_logan.c.
#define atoi | ( | p_str | ) | ni_logan_atoi(p_str, &b_error) |
Definition at line 3786 of file ni_device_api_logan.c.
#define CHECK2VAL | ( | STR, | |
VAL1, | |||
VAL2 | |||
) |
#define COMPARE | ( | STR1, | |
STR2, | |||
STR3 | |||
) |
#define COMPARE_F | ( | STR1, | |
STR2, | |||
STR3 | |||
) |
#define OPT | ( | STR | ) | else if (!strcasecmp(name, STR)) |
#define OPT | ( | STR | ) | else if (!strcasecmp(name, STR)) |
#define OPT | ( | STR | ) | else if (!strcasecmp(name, STR)) |
#define OPT2 | ( | STR1, | |
STR2 | |||
) | else if (!strcasecmp(name, STR1) || !strcasecmp(name, STR2)) |
#define OPT2 | ( | STR1, | |
STR2 | |||
) | else if (!strcasecmp(name, STR1) || !strcasecmp(name, STR2)) |
typedef struct _ni_err_rc_txt_entry ni_logan_err2str_entry_t |
LIB_API ni_logan_retcode_t is_logan_fw_rev_higher | ( | ni_logan_session_context_t * | p_ctx, |
int | fw_api_fla, | ||
int | fw_api_ver | ||
) |
Check if logan firmware version is higher than expected api flavor and version.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | fw_api_fla | expected firmware api flavor |
[in] | fw_api_ver | expected firmware api version |
Definition at line 5573 of file ni_device_api_logan.c.
int ni_calculate_total_frame_size | ( | const ni_logan_session_context_t * | p_upl_ctx, |
const int | linesize[], | ||
const int | heightsize[] | ||
) |
Calculate the total size of a frame based on the upload context attributes and includes rounding up to the page size.
[in] | p_upl_ctx | pointer to an uploader session context |
[in] | linesize | array of line stride |
Definition at line 4796 of file ni_device_api_logan.c.
void ni_logan_close_event | ( | ni_event_handle_t | event_handle | ) |
Closes event and releases resources.
Definition at line 323 of file ni_device_api_logan.c.
ni_event_handle_t ni_logan_create_event | ( | void | ) |
Create event and returnes event handle if successful.
Definition at line 290 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_decode_buffer_free | ( | ni_logan_hwframe_surface_t * | surface, |
ni_device_handle_t | device_handle, | ||
ni_event_handle_t | event_handle | ||
) |
Recycle a frame buffer on card.
POPULATE ME LATER.
[in] | surface | Stuct containing device and frame location to clear out |
Definition at line 5182 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_decoder_frame_buffer_alloc | ( | ni_logan_buf_pool_t * | p_pool, |
ni_logan_frame_t * | p_frame, | ||
int | alloc_mem, | ||
int | video_width, | ||
int | video_height, | ||
int | alignment, | ||
int | factor | ||
) |
Allocate memory for decoder frame buffer based on provided parameters; the memory is retrieved from a buffer pool and will be returned to the same buffer pool by ni_logan_decoder_frame_buffer_free. Note: all attributes of ni_logan_frame_t will be set up except for memory and buffer, which rely on the pool being allocated; the pool will be allocated only after the frame resolution is known.
[in] | p_pool | Buffer pool to get the memory from |
[in] | p_frame | Pointer to a caller allocated ni_logan_frame_t struct |
[in] | alloc_mem | Whether to get memory from buffer pool |
[in] | video_width | Width of the video frame |
[in] | video_height | Height of the video frame |
[in] | alignment | Allignment requirement |
[in] | factor | 1 for 8 bits/pixel format, 2 for 10 bits/pixel |
Definition at line 1950 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_decoder_frame_buffer_free | ( | ni_logan_frame_t * | p_frame | ) |
Free decoder frame buffer that was previously allocated with ni_logan_decoder_frame_buffer_alloc, returning memory to a buffer pool.
[in] | p_frame | Pointer to a previously allocated ni_logan_frame_t struct |
Definition at line 2243 of file ni_device_api_logan.c.
void ni_logan_decoder_frame_buffer_pool_return_buf | ( | ni_logan_buf_t * | buf, |
ni_logan_buf_pool_t * | p_buffer_pool | ||
) |
Return a memory buffer to memory buffer pool.
Return a memory buffer to memory buffer pool, for a decoder frame.
[in] | buf | Buffer to be returned. |
[in] | p_buffer_pool | Buffer pool to return buffer to. |
Definition at line 2293 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_decoder_init_default_params | ( | ni_logan_decoder_params_t * | p_param, |
int | fps_num, | ||
int | fps_denom, | ||
long | bit_rate, | ||
int | width, | ||
int | height | ||
) |
Initialize default decoder parameters.
[out] | param | Pointer to a user allocated ni_logan_decoder_params_t to initialize to default parameters |
[in] | fps_num | Frames per second |
[in] | fps_denom | FPS denomination |
[in] | bit_rate | bit rate |
[in] | width | width |
[in] | height | height |
Definition at line 2696 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_decoder_params_set_value | ( | ni_logan_decoder_params_t * | p_params, |
const char * | name, | ||
char * | value | ||
) |
Set value referenced by name in decoder parameters structure.
[in] | p_params | Pointer to a user allocated ni_logan_decoder_params_t to find and set a particular parameter |
[in] | name | String represented parameter name to search |
[in] | value | Parameter value to set |
Definition at line 2840 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_decoder_session_send_flush | ( | ni_logan_session_context_t * | p_ctx | ) |
Sends a flush command to the decoder ni_logan_device_session_open()
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
Definition at line 1368 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_capability_query | ( | ni_device_handle_t | device_handle, |
ni_logan_device_capability_t * | p_cap | ||
) |
Queries device and returns device capability structure.
[in] | device_handle | Device handle obtained by calling ni_logan_device_open() |
[in] | p_cap | Pointer to a caller allocated ni_logan_device_capability_t struct |
Definition at line 568 of file ni_device_api_logan.c.
void ni_logan_device_close | ( | ni_device_handle_t | device_handle | ) |
Closes device and releases resources.
[in] | device_handle | Device handle obtained by calling ni_logan_device_open() |
Definition at line 502 of file ni_device_api_logan.c.
LIB_API ni_logan_retcode_t ni_logan_device_dec_session_flush | ( | ni_logan_session_context_t * | p_ctx | ) |
Flush a decoder session to get ready to continue decoding.
Flush a decoder session to get ready to continue decoding. Note: this is different from ni_logan_device_session_flush in that it closes the current decode session and opens a new one for continuous decoding.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
Definition at line 1460 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_dec_session_save_hdrs | ( | ni_logan_session_context_t * | p_ctx, |
uint8_t * | hdr_data, | ||
uint8_t | hdr_size | ||
) |
Save a stream's headers in a decoder session that can be used later for continuous decoding from the same source.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | hdr_data | Pointer to header data |
[in] | hdr_size | Size of header data in bytes |
Definition at line 1403 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_handle_map_SN | ( | ni_device_handle_t | device_handle, |
ni_logan_serial_num_t * | p_serial_num | ||
) |
Queries device Serial number.
[in] | device_handle | Device handle used to backtrace serial Num |
[in] | p_serial_num | Pointer to a caller allocated ni_logan_serial_num_t struct |
Definition at line 4409 of file ni_device_api_logan.c.
ni_device_handle_t ni_logan_device_open | ( | const char * | p_dev, |
uint32_t * | p_max_io_size_out | ||
) |
Opens device and returnes device device_handle if successful.
[in] | p_dev | Device name represented as c string. ex: "/dev/nvme0" |
[out] | p_max_io_size_out | Maximum IO Transfer size supported |
Definition at line 385 of file ni_device_api_logan.c.
int ni_logan_device_session_acquire | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_frame_t * | p_frame | ||
) |
Acquire a P2P frame buffer from the hwupload session.
[in] | p_ctx | Pointer to a caller allocated ni_session_context_t struct |
[out] | p_frame | Pointer to a caller allocated hw frame |
Definition at line 4862 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_session_close | ( | ni_logan_session_context_t * | p_ctx, |
int | eos_recieved, | ||
ni_logan_device_type_t | device_type | ||
) |
Closes device session that was previously opened by calling ni_logan_device_session_open() If device_type is NI_LOGAN_DEVICE_TYPE_DECODER closes decoding session If device_type is NI_LOGAN_DEVICE_TYPE_EECODER closes encoding session.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | eos_recieved | Flag indicating if End Of Stream indicator was recieved |
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
Definition at line 1196 of file ni_device_api_logan.c.
ni_logan_session_context_t* ni_logan_device_session_context_alloc_init | ( | void | ) |
Allocates and initializes a new ni_logan_session_context_t struct.
Allocate and initialize a new ni_logan_session_context_t struct.
Definition at line 185 of file ni_device_api_logan.c.
void ni_logan_device_session_context_clear | ( | ni_logan_session_context_t * | p_ctx | ) |
Clear already allocated session context to all zeros.
Clear already allocated session context to all zeros buffer.
[in] | p_ctx | Pointer to an already allocated ni_logan_session_context_t struct |
Definition at line 278 of file ni_device_api_logan.c.
void ni_logan_device_session_context_free | ( | ni_logan_session_context_t * | p_ctx | ) |
Frees previously allocated session context.
[in] | p_ctx | Pointer to an already allocated ni_logan_session_context_t struct |
Definition at line 210 of file ni_device_api_logan.c.
void ni_logan_device_session_context_init | ( | ni_logan_session_context_t * | p_ctx | ) |
Initialize already allocated session context to a known state.
[in] | p_ctx | Pointer to an already allocated ni_logan_session_context_t struct |
Definition at line 226 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_session_copy | ( | ni_logan_session_context_t * | src_p_ctx, |
ni_logan_session_context_t * | dst_p_ctx | ||
) |
Copies existing decoding session params for hw frame usage.
[in] | src_p_ctx | Pointer to a caller allocated source ni_logan_session_context_t struct |
[in] | dst_p_ctx | Pointer to a caller allocated destination ni_logan_session_context_t struct |
Definition at line 4478 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_session_flush | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_device_type_t | device_type | ||
) |
Sends a flush command to the device ni_logan_device_session_open() If device_type is NI_LOGAN_DEVICE_TYPE_DECODER sends flush command to decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER sends flush command to decoder.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
Definition at line 1316 of file ni_device_api_logan.c.
int ni_logan_device_session_hwdl | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_session_data_io_t * | p_data, | ||
ni_logan_hwframe_surface_t * | hwdesc | ||
) |
Reads data from hw descriptor from decoder output buffer.
[in] | p_data | Pointer to a caller allocated ni_logan_session_data_io_t struct which contains either a ni_logan_frame_t data frame or ni_logan_packet_t data packet to send |
[in] | hwdesc | HW descriptor to find frame in XCODER |
Definition at line 4597 of file ni_device_api_logan.c.
int ni_logan_device_session_hwup | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_session_data_io_t * | p_src_data, | ||
ni_logan_hwframe_surface_t * | hwdesc | ||
) |
Writes data and reads back hw descriptor from decoder output buffer.
[in] | p_src_data | Pointer to a caller allocated ni_logan_session_data_io_t struct which contains either a ni_logan_frame_t data frame or ni_logan_packet_t data packet to send |
[in] | hwdesc | HW descriptor to find frame in XCODER |
Definition at line 4650 of file ni_device_api_logan.c.
int ni_logan_device_session_init_framepool | ( | ni_logan_session_context_t * | p_ctx, |
uint32_t | pool_size, | ||
uint32_t | p2p_pool | ||
) |
Sends frame pool setup info to device.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | p_data | Pointer to a caller allocated ni_logan_session_data_io_t struct which contains either a ni_logan_frame_t data frame or ni_logan_packet_t data packet to send |
Definition at line 5225 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_session_open | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_device_type_t | device_type | ||
) |
Opens a new device session depending on the device_type parameter If device_type is NI_LOGAN_DEVICE_TYPE_DECODER opens decoding session If device_type is NI_LOGAN_DEVICE_TYPE_EECODER opens encoding session.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | p_config | Pointer to a caller allocated ni_logan_session_config_t struct |
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
resource management context
Definition at line 645 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_device_session_query | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_device_type_t | device_type | ||
) |
Query session data from the device - Currently not implemented If device_type is NI_LOGAN_DEVICE_TYPE_DECODER query session data from decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER query session data from encoder.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER |
Definition at line 1734 of file ni_device_api_logan.c.
int ni_logan_device_session_read | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_session_data_io_t * | p_data, | ||
ni_logan_device_type_t | device_type | ||
) |
Reads data the device If device_type is NI_LOGAN_DEVICE_TYPE_DECODER reads data packet from decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER reads data frame from encoder.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | p_data | Pointer to a caller allocated ni_logan_session_data_io_t struct which contains either a ni_logan_frame_t data frame or ni_logan_packet_t data packet to send |
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER If NI_LOGAN_DEVICE_TYPE_DECODER is specified, data that was read will be placed into ni_logan_frame_t struct inside the p_data pointer If NI_LOGAN_DEVICE_TYPE_ENCODER is specified, data that was read will be placed into ni_logan_packet_t struct inside the p_data pointer |
Definition at line 1616 of file ni_device_api_logan.c.
int ni_logan_device_session_read_hwdesc | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_session_data_io_t * | p_data | ||
) |
Reads data from the device device_type should be NI_LOGAN_DEVICE_TYPE_DECODER, and reads data hwdesc from decoder when hw transcoding.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | p_data | Pointer to a caller allocated ni_logan_session_data_io_t struct which contains either a ni_logan_frame_t data frame or ni_logan_packet_t data packet to send |
Definition at line 4510 of file ni_device_api_logan.c.
int ni_logan_device_session_write | ( | ni_logan_session_context_t * | p_ctx, |
ni_logan_session_data_io_t * | p_data, | ||
ni_logan_device_type_t | device_type | ||
) |
Sends data the device If device_type is NI_LOGAN_DEVICE_TYPE_DECODER sends data packet to decoder If device_type is NI_LOGAN_DEVICE_TYPE_EECODER sends data frame to encoder.
[in] | p_ctx | Pointer to a caller allocated ni_logan_session_context_t struct |
[in] | p_data | Pointer to a caller allocated ni_logan_session_data_io_t struct which contains either a ni_logan_frame_t data frame or ni_logan_packet_t data packet to send |
[in] | device_type | NI_LOGAN_DEVICE_TYPE_DECODER or NI_LOGAN_DEVICE_TYPE_ENCODER If NI_LOGAN_DEVICE_TYPE_DECODER is specified, it is expected that the ni_logan_packet_t struct inside the p_data pointer contains data to send. If NI_LOGAN_DEVICE_TYPE_ENCODER is specified, it is expected that the ni_logan_frame_t struct inside the p_data pointer contains data to send. |
Definition at line 1539 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_encoder_frame_buffer_alloc | ( | ni_logan_frame_t * | p_frame, |
int | video_width, | ||
int | video_height, | ||
int | linesize[], | ||
int | alignment, | ||
int | extra_len, | ||
int | factor | ||
) |
Allocate memory for the frame buffer for encoding based on given parameters, taking into account pic line size and extra data. Applicable to YUV420p AVFrame only. 8 or 10 bit/pixel. Cb/Cr size matches that of Y.
[in] | p_frame | Pointer to a caller allocated ni_logan_frame_t struct |
[in] | video_width | Width of the video frame |
[in] | video_height | Height of the video frame |
[in] | linesize | Picture line size |
[in] | alignment | Allignment requirement |
[in] | extra_len | Extra data size (incl. meta data) |
Definition at line 2071 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_encoder_gop_params_set_value | ( | ni_logan_encoder_params_t * | p_params, |
const char * | name, | ||
const char * | value | ||
) |
Set got parameter value referenced by name in encoder parameters structure.
Set gop parameter value referenced by name in encoder parameters structure.
[in] | p_params | Pointer to a user allocated ni_logan_encoder_params_t to find and set a particular parameter |
[in] | name | String represented parameter name to search |
[in] | value | Parameter value to set |
Definition at line 3804 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_encoder_init_default_params | ( | ni_logan_encoder_params_t * | p_param, |
int | fps_num, | ||
int | fps_denom, | ||
long | bit_rate, | ||
int | width, | ||
int | height | ||
) |
Initialize default encoder parameters.
[out] | param | Pointer to a user allocated ni_logan_encoder_params_t to initialize to default parameters |
[in] | fps_num | Frames per second |
[in] | fps_denom | FPS denomination |
[in] | bit_rate | bit rate |
[in] | width | width |
[in] | height | height |
Definition at line 2518 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_encoder_params_check | ( | ni_logan_encoder_params_t * | p_params, |
ni_logan_codec_format_t | codec | ||
) |
Validate relationship of some params in encoder parameters structure.
[in] | p_params | Pointer to a user allocated ni_logan_encoder_params_t |
[in] | codec | encoding codec |
Definition at line 3747 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_encoder_params_set_value | ( | ni_logan_encoder_params_t * | p_params, |
const char * | name, | ||
const char * | value, | ||
ni_logan_session_context_t * | ctx | ||
) |
Set value referenced by name in encoder parameters structure.
[in] | p_params | Pointer to a user allocated ni_logan_encoder_params_t to find and set a particular parameter |
[in] | name | String represented parameter name to search |
[in] | value | Parameter value to set |
Definition at line 3069 of file ni_device_api_logan.c.
LIB_API ni_logan_retcode_t ni_logan_encoder_set_input_frame_format | ( | ni_logan_session_context_t * | p_enc_ctx, |
ni_logan_encoder_params_t * | p_enc_params, | ||
int | width, | ||
int | height, | ||
int | bit_depth, | ||
int | src_endian | ||
) |
Set the incoming frame format for the encoder.
[in] | p_enc_ctx | pointer to encoder context [in] p_enc_params pointer to encoder parameters [in] width input width [in] height input height [in] bit_depth 8 for 8-bit YUV, 10 for 10-bit YUV [in] src_endian NI_FRAME_LITTLE_ENDIAN or NI_FRAME_BIG_ENDIAN |
on failure NI_RETCODE_INVALID_PARAM
Definition at line 5109 of file ni_device_api_logan.c.
const char* ni_logan_err2str | ( | int | err | ) |
Convert error numver into error messages.
Definition at line 164 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_frame_buffer_alloc | ( | ni_logan_frame_t * | p_frame, |
int | video_width, | ||
int | video_height, | ||
int | alignment, | ||
int | metadata_flag, | ||
int | factor, | ||
int | hw_frame_count | ||
) |
Allocate preliminary memory for the frame buffer for encoding based on provided parameters. Applicable to YUV420 Planar pixel format only, 8 or 10 bit/pixel.
[in] | p_frame | Pointer to a caller allocated ni_logan_frame_t struct |
[in] | video_width | Width of the video frame |
[in] | video_height | Height of the video frame |
[in] | alignment | Allignment requirement |
[in] | metadata_flag | Flag indicating if space for additional metadata should be allocated |
[in] | factor | 1 for 8 bits/pixel format, 2 for 10 bits/pixel |
Definition at line 1792 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_frame_buffer_alloc_hwenc | ( | ni_logan_frame_t * | p_frame, |
int | video_width, | ||
int | video_height, | ||
int | extra_len | ||
) |
Allocate memory for the frame buffer based on provided parameters taking into account pic line size and extra data. Applicable to YUV420p AVFrame for hw only.
Allocate memory for the frame buffer based on provided parameters taking into account pic line size and extra data. Applicable to YUV420p AVFrame only. Cb/Cr size matches that of Y.
[in] | p_frame | Pointer to a caller allocated ni_logan_frame_t struct |
[in] | video_width | Width of the video frame |
[in] | video_height | Height of the video frame |
[in] | linesize | Picture line size |
[in] | alignment | Allignment requirement |
[in] | extra_len | Extra data size (incl. meta data) |
Definition at line 4696 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_frame_buffer_alloc_v4 | ( | ni_logan_frame_t * | p_frame, |
int | pixel_format, | ||
int | video_width, | ||
int | video_height, | ||
int | linesize[], | ||
int | alignment, | ||
int | extra_len | ||
) |
Allocate memory for the frame buffer based on provided parameters taking into account width, height, format, stride, alignment, and extra data.
[in] | p_frame | Pointer to caller allocated ni_logan_frame_t |
[in] | pixel_format | pixel format |
[in] | video_width | width, in pixels |
[in] | video_height | height, in pixels |
[in] | linesize | horizontal stride |
[in] | alignment | apply a 16 pixel height alignment (T408 only) |
[in] | extra_len | meta data size |
Definition at line 5263 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_frame_buffer_free | ( | ni_logan_frame_t * | p_frame | ) |
Free frame buffer that was previously allocated with either ni_logan_frame_buffer_alloc or ni_logan_encoder_frame_buffer_alloc.
[in] | p_frame | Pointer to a previously allocated ni_logan_frame_t struct |
Definition at line 2196 of file ni_device_api_logan.c.
void ni_logan_frame_free_aux_data | ( | ni_logan_frame_t * | frame, |
ni_aux_data_type_t | type | ||
) |
If auxiliary data of the given type exists in the frame, free it and remove it from the frame.
[in/out] | frame a frame from which the auxiliary data should be removed | |
[in] | type | type of the auxiliary data to be removed |
Definition at line 4354 of file ni_device_api_logan.c.
ni_aux_data_t* ni_logan_frame_get_aux_data | ( | const ni_logan_frame_t * | frame, |
ni_aux_data_type_t | type | ||
) |
Retrieve from the frame auxiliary data of a given type if exists.
[in] | frame | a frame from which the auxiliary data should be retrieved |
[in] | type | type of the auxiliary data to be retrieved |
Definition at line 4331 of file ni_device_api_logan.c.
ni_aux_data_t* ni_logan_frame_new_aux_data | ( | ni_logan_frame_t * | frame, |
ni_aux_data_type_t | type, | ||
int | data_size | ||
) |
Add a new auxiliary data to a frame.
[in/out] | frame a frame to which the auxiliary data should be added | |
[in] | type | type of the added auxiliary data |
[in] | data_size | size of the added auxiliary data |
Definition at line 4269 of file ni_device_api_logan.c.
ni_aux_data_t* ni_logan_frame_new_aux_data_from_raw_data | ( | ni_logan_frame_t * | frame, |
ni_aux_data_type_t | type, | ||
const uint8_t * | raw_data, | ||
int | data_size | ||
) |
Add a new auxiliary data to a frame and copy in the raw data.
[in/out] | frame a frame to which the auxiliary data should be added | |
[in] | type | type of the added auxiliary data |
[in] | raw_data | the raw data of the aux data |
[in] | data_size | size of the added auxiliary data |
Definition at line 4310 of file ni_device_api_logan.c.
void ni_logan_frame_wipe_aux_data | ( | ni_logan_frame_t * | frame | ) |
Free and remove all auxiliary data from the frame.
[in/out] | frame a frame from which the auxiliary data should be removed |
Definition at line 4382 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_frame_zerocopy_buffer_alloc | ( | ni_logan_frame_t * | p_frame, |
int | video_width, | ||
int | video_height, | ||
int | linesize[], | ||
int | extra_len, | ||
int | factor, | ||
uint8_t * | buffer[] | ||
) |
Allocate memory for the frame buffer based on provided parameters Applicable to use YUV420p AVFrame for zerocopy case. Allocat extra_len only.
Allocate memory for the frame buffer for encoding based on given parameters, taking into account pic line size and extra data. Applicable to YUV420p AVFrame only. 8 or 10 bit/pixel. Cb/Cr size matches that of Y.
[in] | p_frame | Pointer to a caller allocated ni_logan_frame_t struct |
[in] | video_width | Width of the video frame |
[in] | video_height | Height of the video frame |
[in] | linesize | Picture line size |
[in] | extra_len | Extra data size (incl. meta data) |
[in] | buffer[] | Buffer address of video frame. |
Definition at line 5423 of file ni_device_api_logan.c.
LIB_API ni_logan_retcode_t ni_logan_frame_zerocopy_check | ( | const int | width, |
const int | height, | ||
const int | linesize[], | ||
const int | dst_stride[], | ||
const int | src_height[], | ||
const int | dst_height[], | ||
const int | bit_depth_factor, | ||
const uint8_t * | data[] | ||
) |
Check if incoming frame is encoder zero copy compatible or not.
[in] | width | width of encoder frame. |
[in] | height | height of encoder frame. |
[in] | linesize | linesizes (pointer to array). |
[in] | dst_stride | dst_stride (produced by ni_logan_get_hw_yuv420p_dim). |
[in] | src_height | src height of every planar. |
[in] | dst_height | dst_height_aligned(produced by ni_logan_get_hw_yuv420p_dim). |
[in] | bit_depth_factor | bit_depth of frame. |
[in] | data | CPU address of frame planar. |
on failure NI_LOGAN_RETCODE_FAILURE
Definition at line 5535 of file ni_device_api_logan.c.
int ni_logan_get_num_ref_frame_of_gop_structure | ( | ni_logan_encoder_params_t * | p_params | ) |
Get GOP's number of reference frames.
[in] | p_params | Pointer to a user allocated ni_logan_encoder_params_t |
Definition at line 4215 of file ni_device_api_logan.c.
int ni_logan_get_num_reorder_of_gop_structure | ( | ni_logan_encoder_params_t * | p_params | ) |
Get GOP's max number of reorder frames.
[in] | p_params | Pointer to a user allocated ni_logan_encoder_params_t |
Definition at line 4156 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_packet_buffer_alloc | ( | ni_logan_packet_t * | p_packet, |
int | packet_size | ||
) |
Allocate memory for the packet buffer based on provided packet size.
[in] | p_packet | Pointer to a caller allocated ni_logan_packet_t struct |
[in] | packet_size | Required allocation size |
Definition at line 2311 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_packet_buffer_free | ( | ni_logan_packet_t * | p_packet | ) |
Free packet buffer that was previously allocated with either ni_logan_packet_buffer_alloc.
[in] | p_packet | Pointer to a previously allocated ni_logan_packet_t struct |
Definition at line 2395 of file ni_device_api_logan.c.
int ni_logan_packet_copy | ( | void * | p_destination, |
const void *const | p_source, | ||
int | cur_size, | ||
void * | p_leftover, | ||
int * | p_prev_size | ||
) |
Copy video packet accounting for allighment.
[in] | p_destination | Destination to where to copy to |
[in] | p_source | Source from where to copy from |
[in] | cur_size | current size |
[out] | p_leftover | Pointer to the data that was left over |
[out] | p_prev_size | Size of the data leftover ?? |
Definition at line 2441 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_parse_reconf_file | ( | const char * | reconf_file, |
int | hash_map[100][10] | ||
) |
Definition at line 2746 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_uploader_frame_buffer_lock | ( | ni_logan_session_context_t * | p_upl_ctx, |
ni_logan_frame_t * | p_frame | ||
) |
Lock a hardware P2P frame prior to encoding.
[in] | p_upl_ctx | pointer to caller allocated upload context [in] p_frame pointer to caller allocated hardware P2P frame |
Definition at line 4946 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_uploader_frame_buffer_unlock | ( | ni_logan_session_context_t * | p_upl_ctx, |
ni_logan_frame_t * | p_frame | ||
) |
Unlock a hardware P2P frame after encoding.
[in] | p_upl_ctx | pointer to caller allocated upload context [in] p_frame pointer to caller allocated hardware P2P frame |
Definition at line 5004 of file ni_device_api_logan.c.
ni_logan_retcode_t ni_logan_uploader_p2p_test_send | ( | ni_logan_session_context_t * | p_upl_ctx, |
uint8_t * | p_data, | ||
uint32_t | len, | ||
ni_logan_frame_t * | p_hwframe | ||
) |
Special P2P test API function. Copies YUV data from the software frame to the hardware P2P frame on the T408 device.
Special P2P test API call. Copies YUV data from the software frame to the hardware P2P frame on the Quadra device.
[in] | p_upl_ctx | pointer to caller allocated uploader session context [in] p_swframe pointer to a caller allocated software frame [in] p_hwframe pointer to a caller allocated hardware frame |
Definition at line 5052 of file ni_device_api_logan.c.
const char* const g_logan_xcoder_log_names[NI_LOGAN_XCODER_LOG_NAMES_ARRAY_LEN] |
Definition at line 65 of file ni_device_api_logan.c.
const char* const g_logan_xcoder_preset_names[NI_LOGAN_XCODER_PRESET_NAMES_ARRAY_LEN] |
Definition at line 61 of file ni_device_api_logan.c.