libxcoder  3.5.1
ni_device_test_logan.h File Reference

Example code on how to programmatically work with NI T-408 using libxcoder API. More...

#include <stdio.h>
#include <stdlib.h>
#include "ni_av_codec_logan.h"

Go to the source code of this file.

Data Structures

struct  _device_state
 
struct  _tx_data
 
struct  RecvDataStruct_
 
struct  _ni_logan_h264_sps_t
 
struct  dev_send_param
 
struct  dev_recv_param
 

Macros

#define NVME_CMD_SEM_PROTECT   1
 
#define FILE_NAME_LEN   256
 
#define XCODER_APP_TRANSCODE   0
 
#define XCODER_APP_DECODE   1
 
#define XCODER_APP_ENCODE   2
 
#define ENC_CONF_STRUCT_SIZE   0x100
 

Typedefs

typedef struct _device_state device_state_t
 
typedef struct _tx_data tx_data_t
 
typedef struct RecvDataStruct_ rx_data_t
 
typedef struct _ni_logan_h264_sps_t ni_logan_h264_sps_t
 
typedef struct dev_send_param dev_send_param_t
 
typedef struct dev_recv_param dev_recv_param_t
 

Functions

int decoder_send_data (ni_logan_session_context_t *p_dec_ctx, ni_logan_session_data_io_t *p_in_data, int input_video_width, int input_video_height, int packet_size, unsigned long *sentTotal, int printT, device_state_t *xState, ni_logan_h264_sps_t *sps)
 Send decoder input data. More...
 
int decoder_receive_data (ni_logan_session_context_t *p_dec_ctx, ni_logan_session_data_io_t *p_out_data, int output_video_width, int output_video_height, FILE *pfr, unsigned long long *recvTotal, int printT, device_state_t *xState)
 Receive decoded output data from decoder. More...
 
int encoder_send_data (ni_logan_session_context_t *p_enc_ctx, ni_logan_session_data_io_t *p_in_data, int input_video_width, int input_video_height, unsigned long *sentSize, device_state_t *xState)
 Send encoder input data, read from input file. More...
 
int encoder_send_data2 (ni_logan_session_context_t *p_enc_ctx, ni_logan_session_context_t *p_dec_ctx, ni_logan_session_data_io_t *p_dec_out_data, ni_logan_session_data_io_t *p_enc_in_data, int input_video_width, int input_video_height, unsigned long *sentSize, device_state_t *xState)
 

Detailed Description

Example code on how to programmatically work with NI T-408 using libxcoder API.


Copyright (C) 2018 NETINT Technologies.

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.


Definition in file ni_device_test_logan.h.

Macro Definition Documentation

◆ ENC_CONF_STRUCT_SIZE

#define ENC_CONF_STRUCT_SIZE   0x100

Definition at line 44 of file ni_device_test_logan.h.

◆ FILE_NAME_LEN

#define FILE_NAME_LEN   256

Definition at line 38 of file ni_device_test_logan.h.

◆ NVME_CMD_SEM_PROTECT

#define NVME_CMD_SEM_PROTECT   1

Definition at line 36 of file ni_device_test_logan.h.

◆ XCODER_APP_DECODE

#define XCODER_APP_DECODE   1

Definition at line 41 of file ni_device_test_logan.h.

◆ XCODER_APP_ENCODE

#define XCODER_APP_ENCODE   2

Definition at line 42 of file ni_device_test_logan.h.

◆ XCODER_APP_TRANSCODE

#define XCODER_APP_TRANSCODE   0

Definition at line 40 of file ni_device_test_logan.h.

Typedef Documentation

◆ dev_recv_param_t

◆ dev_send_param_t

◆ device_state_t

typedef struct _device_state device_state_t

◆ ni_logan_h264_sps_t

Sequence parameter set

◆ rx_data_t

typedef struct RecvDataStruct_ rx_data_t

◆ tx_data_t

typedef struct _tx_data tx_data_t

Function Documentation

◆ decoder_receive_data()

int decoder_receive_data ( ni_logan_session_context_t p_dec_ctx,
ni_logan_session_data_io_t p_out_data,
int  output_video_width,
int  output_video_height,
FILE *  p_file,
unsigned long long *  total_bytes_received,
int  print_time,
device_state_t p_device_state 
)

Receive decoded output data from decoder.


Parameters
<br>
Returns
0: got YUV frame; 1: end-of-stream; 2: got nothing

Definition at line 1480 of file ni_device_test_logan.c.

◆ decoder_send_data()

int decoder_send_data ( ni_logan_session_context_t p_dec_ctx,
ni_logan_session_data_io_t p_in_data,
int  input_video_width,
int  input_video_height,
int  packet_size,
unsigned long *  total_bytes_sent,
int  print_time,
device_state_t p_device_state,
ni_logan_h264_sps_t sps 
)

Send decoder input data.


Parameters
<br>
Returns

Definition at line 1243 of file ni_device_test_logan.c.

◆ encoder_send_data()

int encoder_send_data ( ni_logan_session_context_t p_enc_ctx,
ni_logan_session_data_io_t p_in_data,
int  input_video_width,
int  input_video_height,
unsigned long *  bytes_sent,
device_state_t p_device_state 
)

Send encoder input data, read from input file.


Parameters
<br>
Returns

Definition at line 1625 of file ni_device_test_logan.c.

◆ encoder_send_data2()

int encoder_send_data2 ( ni_logan_session_context_t p_enc_ctx,
ni_logan_session_context_t p_dec_ctx,
ni_logan_session_data_io_t p_dec_out_data,
ni_logan_session_data_io_t p_enc_in_data,
int  input_video_width,
int  input_video_height,
unsigned long *  sentSize,
device_state_t xState 
)

Definition at line 1767 of file ni_device_test_logan.c.