离线声纹Linux SDK
功能简介
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#名词解释)名词解释
名词 | 说明 |
---|---|
声纹识别 | 根据语音中反映的说话人生理和行为特征,自动识别说话人身份的生物识别技术。 |
VPR | Voiceprint Recognition |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#授权说明)授权说明
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#相关约定说明)相关约定说明
符号 | 含义 |
---|---|
[in] | 表明该参数是调用时赋值的参数——输入参数 |
[out] | 该参数在函数返回时被赋值——输出参数 |
[in/out] | 该参数在函数调用时作为输入、函数返回时作为输出参数 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#声纹唤醒sdk接口说明)声纹唤醒SDK接口说明
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#接口调用流程)接口调用流程

[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#morfeicore-接口函数列表)MorfeiCore 接口函数列表
函数名称 | 功能简介 |
---|---|
morfeicore_start | 初始化MorfeiCore 服务 |
morfeicore_stop | 逆初始化MorfeiCore 服务 |
morfeicore_getversion | 获取MorfeiCore版本号 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vpr接口函数列表)VPR接口函数列表
函数名称 | 功能简介 |
---|---|
VPRInit | 初始化VPR引擎 |
VPRUninit | 逆初始化VPR引擎 |
VPRGetVersion | 获取VPR引擎版本号 |
VPRLoadResource | 加载VPR资源 |
VPRUnloadResource | 删除VPR资源 |
VPRRegister | 注册VPR资源 |
VPRCreateInst | 创建VPR引擎实例 |
VPRDestoryInst | 销毁VPR引擎实例 |
VPRSetListener | 设置VPR回调接口 |
VPRGetParam | 获取VPR实例参数 |
VPRSetParam | 设置VPR实例参数 |
VPRStartInst | 启动一个VPR实例 |
VPRWriteAudio | 写入音频 |
VPRStopInst | 停止一个VPR实例 |
VPRResetInst | 重置一个VPR实例 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#返回值说明)返回值说明
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#morfeicore函数调用)MorfeiCore函数调用
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#morfeicore-start)morfeicore_start
int morfeicore_start(const char *params, morfeicore_status_cb_t status_cb, void *user_data);
参数名 | 参数解释 |
---|---|
params[in] | 参数字符串 |
status_cb[in] | 回调函数 |
user_data[in] | 用户数据 |
typedef int ( *morfeicore_status_cb_t)( int type, int status, int param1, const void *param2, void *user_data);
参数名 | 参数解释 |
---|---|
type[out] | 数据类型 |
status[out] | 状态信息 |
param1[out] | 保留参数 |
param2[out] | 保留参数 |
user_data[out] | 用户数据 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#morfeicore-stop)morfeicore_stop
int morfeicore_stop(void);
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#morfeicore-getversion)morfeicore_ getversion
const char* morfeicore_getversion(void);
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vpr函数调用)VPR函数调用
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprinit)VPRInit
int VPRInit(struct aiotOS * param, void* reserved);
参数名 | 参数解释 |
---|---|
param[in] | 保留使用的结构体参数 |
reserved[in] | 接口保留参数 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vpruninit)VPRUnInit
int VPRUninit(void* reserved);
参数名 | 参数解释 |
---|---|
reserved[in] | 接口保留参数 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprgetversion)VPRGetVersion
char* VPRGetVersion(void);
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprloadresource)VPRLoadResource
int VPRLoadResource(const char* res, int ressize, void* reserved);
参数名 | 参数解释 |
---|---|
res[in] | 加载资源的首地址 |
resize[in] | 资源长度 |
reserved[in] | 接口保留参数 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprunloadresource)VPRUnloadResource
int VPRUnloadResource(int restype, int resid);
参数名 | 参数解释 |
---|---|
restype[in] | 资源类型 |
resid[in] | 资源ID |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprregister)VPRRegister
int VPRRegister(const char* srcres, int srcressize, const char* registerbuf, int registertype, int registerid, int registersize, char* targetres, int* targetsize);
参数名 | 参数解释 |
---|---|
srcres[in] | 原始资源地址 |
srcressize[in] | 原始资源大小 |
registerbuf[in] | 注册音频数据地址(16k、16bit、单通道、pcm音频) |
registertype[in] | 注册资源类型 |
registered[in] | 注册资源ID |
registersize[in] | 注册资源大小 |
targetres[in] | 存储资源地址 |
targetsize[in/out] | 存储资源大小 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprcreateinst)VPRCreateInst
int VPRCreateInst(VPR_HANDLE* pvprinst);
参数名 | 参数解释 |
---|---|
pvprinst[out] | 实例对象句柄二级指针 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprdestoryinst)VPRDestoryInst
int VPRDestoryInst(VPR_HANDLE vprinst);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprsetlistener)VPRSetListener
int VPRSetListener(VPR_HANDLE vprinst, const int cbtype, const void* listener, void* userdata);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
cbtype[in] | 参数类型:VPR_PARAM_RESULTCALLBACK 注册声纹回调函数 参数类型:IVW_PARAM_WAKEUPCALLBACK 注册唤醒回调函数 |
listener[in] | 回调函数指针 |
userdata[in] | 用户数据 |
typedef int (*VprCallBack)(void *pUserParam, const char* pVprParam);
参数名 | 参数解释 |
---|---|
pUserParam[out] | 用户数据 |
pVprParam[out] | 声纹信息 |
typedef int (*IvwCallBack)(void *pUserParam, const char* pVprParam);
参数名 | 参数解释 |
---|---|
pUserParam[out] | 用户数据 |
pVprParam[out] | 唤醒信息 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprgetparam)VPRGetParam
int VPRGetParam(VPR_HANDLE vprinst, int paramtype, void* paramvalue, int* paramsize);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
paramtype[in] | 参数类型: VPR_PARAM_ENGINE_MODE 说 明 :获取引擎工作模式 |
paramvalue[out] | 参数值 |
paramsize[in/out] | 参数长度 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprsetparam)VPRSetParam
int VPRSetParam(VPR_HANDLE vprinst, int paramtype, void* paramvalue, int paramsize);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
paramtype[in] | 参数类型: VPR_PARAM_ENGINE_MODE 说 明 : 设置引擎模式 |
paramvalue[in] | 参数值 |
paramsize[in] | 参数长度 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprstartinst)VPRStartInst
int VPRStartInst(VPR_HANDLE vprinst);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprwriteaudio)VPRWriteAudio
int VPRWriteAudio(VPR_HANDLE vprinst, const char* buf, int bufsize, int writestatus);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
buf[in] | 音频数据地址(16k、16bit、单通道、pcm音频) |
bufsize[in] | 传入音频长度,字节为单位 |
writestatus[in] | 当前数据状态标志 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprstopinst)VPRStopInst
int VPRStopInst(VPR_HANDLE vprinst);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
[#](https://www.xfyun.cn/doc/solutions/hardwareUniversal/Offline-ISV-Linux SDK.html#vprresetinst)VPRResetInst
int VPRResetInst(VPR_HANDLE vprinst);
参数名 | 参数解释 |
---|---|
vprinst[in] | 实例对象句柄指针 |
修改于 2023-12-21 03:59:15