GK SDK 源码库: XMIPCLinuxV100R005C00SPC030 (kernel/tools/open_source excluded)
This commit is contained in:
@@ -0,0 +1,98 @@
|
||||
/*
|
||||
* Copyright (c) XMEDIA. All rights reserved.
|
||||
*/
|
||||
|
||||
#ifndef __XMEDIA_AUDIO_VQE_BCD_H__
|
||||
#define __XMEDIA_AUDIO_VQE_BCD_H__
|
||||
|
||||
#include "xmedia_type.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef xmedia_s32 (*fn_bcd_callback)(xmedia_void* private_data); /* Baby Crying Detection be noticed Function Handle type */
|
||||
|
||||
typedef enum load_type {
|
||||
XMEDIA_CL_LOAD_MEM = 0,
|
||||
XMEDIA_CL_LOAD_FILE,
|
||||
} audio_load_type;
|
||||
|
||||
typedef struct {
|
||||
audio_load_type load_type; // 模型输入类别
|
||||
union {
|
||||
struct {
|
||||
xmedia_char *pathname; // bcd模型文件
|
||||
} file;
|
||||
struct {
|
||||
xmedia_u8 *buf; // bcd模型存放的内存
|
||||
xmedia_u32 len; // bcd模型的长度
|
||||
} mem;
|
||||
} model_info;
|
||||
} audio_load_model;
|
||||
|
||||
/* Defines the configure parameters of Baby Crying Detection. */
|
||||
typedef struct {
|
||||
xmedia_bool usr_mode; /* mode 0: auto mode 1: mannual. */
|
||||
xmedia_bool bypass; /* value 0: enable function; value 1: bypass function. */
|
||||
xmedia_u32 alarm_threshold; /* alarm threshold. range[0, 100] */
|
||||
xmedia_u32 time_limit; /* alarm time limit(s), range [0, 120]. */
|
||||
xmedia_u32 time_limit_threshold_count; /* alarm time limit threshold count, range [1, 5]. */
|
||||
xmedia_u32 interval_time; /* alarm interval time to unfreeze(s), [0, 120]*/
|
||||
fn_bcd_callback callback; /* the callback function pointer */
|
||||
audio_load_model bcd_model; /*for load npu xmm,arm not use*/
|
||||
xmedia_void* private_data; /* the callback private data */
|
||||
} audio_bcd_config;
|
||||
|
||||
/* Defines the process data configure of Baby Crying Detection. */
|
||||
typedef struct {
|
||||
xmedia_s16* data; /* the pointer to data buf. */
|
||||
xmedia_s32 data_size; /* the size of data buf. */
|
||||
} audio_process_data;
|
||||
|
||||
/*
|
||||
* 函数功能:获取哭声检测版本号
|
||||
* 函数参数:
|
||||
* version - 输出参数,版本号
|
||||
* 返回值:
|
||||
* 对应版本号数值
|
||||
*/
|
||||
xmedia_s32 xmedia_audio_bcd_get_version(xmedia_char* version);
|
||||
|
||||
/*
|
||||
* 函数功能:实例化哭声检测
|
||||
* 函数参数:
|
||||
* bcd - 输出参数,哭声检查句柄
|
||||
* sample_rate - 输入参数,采样率,当前只支持16K
|
||||
* bcd_config - 输入参数,哭声检测的配置属性
|
||||
* 返回值:
|
||||
* XMEDIA_FAILURE - 初始化失败
|
||||
* XMEDIA_SUCCESS - 初始化成功
|
||||
*/
|
||||
xmedia_s32 xmedia_audio_bcd_init(xmedia_void** bcd, xmedia_s32 sample_rate, const audio_bcd_config* bcd_config);
|
||||
|
||||
/*
|
||||
* 函数功能:哭声检测数据处理
|
||||
* 函数参数:
|
||||
* input_data - 输入参数,输入数据信息
|
||||
* output_data - 输出参数,输出数据信息
|
||||
* 返回值:
|
||||
* XMEDIA_FAILURE - 数据处理失败
|
||||
* XMEDIA_SUCCESS - 数据处理成功
|
||||
*/
|
||||
xmedia_s32 xmedia_audio_bcd_process(xmedia_void* bcd, audio_process_data* input_data, audio_process_data* output_data);
|
||||
|
||||
/*
|
||||
* 函数功能:去实例化哭声检测
|
||||
* 函数参数:
|
||||
* bcd - 输入参数,哭声检测句柄
|
||||
* 返回值:
|
||||
* XMEDIA_FAILURE - 去初始化失败
|
||||
* XMEDIA_SUCCESS - 去初始化成功
|
||||
*/
|
||||
xmedia_s32 xmedia_audio_bcd_deinit(xmedia_void* bcd);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
Reference in New Issue
Block a user