48 #ifndef MEDIAPROCESSORS_SRC_PROC_H_ 49 #define MEDIAPROCESSORS_SRC_PROC_H_ 53 #include <libmediaprocsutils/mem_utils.h> 70 #define CJSON_PRINT(CJSON_PTR) cJSON_Print(CJSON_PTR) 122 volatile uint32_t acc_io_bits[PROC_IO_NUM];
123 pthread_mutex_t acc_io_bits_mutex[PROC_IO_NUM];
131 #define IPUT_PTS_ARRAY_SIZE 128 132 #define IPUT_PTS_VAL 0 133 #define IPUT_PTS_STC_VAL 1 135 volatile int iput_pts_array_idx;
149 volatile int64_t latency_max_usec;
150 volatile int64_t latency_min_usec;
151 volatile int64_t acc_latency_nsec;
152 volatile int acc_latency_cnt;
153 pthread_mutex_t latency_mutex;
181 const void*(*start_routine)(
void *);
307 int proc_send_frame_default1(
proc_ctx_t *proc_ctx,
310 int proc_recv_frame_default1(
proc_ctx_t *proc_ctx,
313 void proc_stats_register_accumulated_latency(
proc_ctx_t *proc_ctx,
314 const int64_t oput_frame_pts);
volatile int64_t latency_avg_usec
proc_ctx_t * proc_open(const proc_if_t *proc_if, const char *settings_str, int proc_instance_index, uint32_t fifo_ctx_maxsize[PROC_IO_NUM], log_ctx_t *log_ctx, va_list arg)
struct proc_ctx_s proc_ctx_t
#define IPUT_PTS_ARRAY_SIZE
pthread_mutex_t api_mutex
int proc_vopt(proc_ctx_t *proc_ctx, const char *tag, va_list arg)
interr_usleep_ctx_t * interr_usleep_ctx
const proc_if_t * proc_if
fifo_ctx_t * fifo_ctx_array[PROC_IO_NUM]
void proc_close(proc_ctx_t **ref_proc_ctx)
int proc_opt(proc_ctx_t *proc_ctx, const char *tag,...)
int proc_send_frame(proc_ctx_t *proc_ctx, const proc_frame_ctx_t *proc_frame_ctx)
fair_lock_t * fair_lock_io_array[PROC_IO_NUM]
volatile uint32_t bitrate[PROC_IO_NUM]
int proc_recv_frame(proc_ctx_t *proc_ctx, proc_frame_ctx_t **ref_proc_frame_ctx)