灵云SDK开发手册(C API)
8.1
首页
API参考手册
结构体
附录
src
c
include
hci_asr_recorder.h
1
6
#ifndef __HCI_ASR_RECORDER_HEADER__
7
#define __HCI_ASR_RECORDER_HEADER__
8
9
#include "hci_sys.h"
10
#include "hci_asr.h"
11
12
#ifdef __cplusplus
13
extern
"C"
14
{
15
#endif
16
18
/* @{ */
19
21
/* @{ */
22
26
#define MODULE_NAME "HCI_ASR_RECORDER"
27
31
typedef
enum
32
{
33
RECORDER_EVENT_BEGIN_RECORD
,
34
RECORDER_EVENT_HAVING_VOICE
,
35
RECORDER_EVENT_NO_VOICE_INPUT
,
36
RECORDER_EVENT_BUFF_FULL
,
37
RECORDER_EVENT_END_RECORD
,
38
RECORDER_EVENT_BEGIN_RECOGNIZE
,
39
RECORDER_EVENT_RECOGNIZE_COMPLETE
,
40
RECORDER_EVENT_ENGINE_ERROR
,
41
RECORDER_EVENT_DEVICE_ERROR
,
42
RECORDER_EVENT_MALLOC_ERROR
,
43
RECORDER_EVENT_INTERRUPTED
,
44
RECORDER_EVENT_PERMISSION_DENIED
,
45
RECORDER_EVENT_TASK_FINISH
,
46
RECORDER_EVENT_RECOGNIZE_PROCESS
,
47
}
48
RECORDER_EVENT
;
49
53
typedef
enum
54
{
55
RECORDER_ERR_UNKNOWN
= -1,
56
57
RECORDER_ERR_NONE
= 0,
58
59
RECORDER_ERR_NOT_INIT
,
60
RECORDER_ERR_ALREADY_INIT
,
61
RECORDER_ERR_ALREADY_BEGIN
,
62
RECORDER_ERR_NOT_BEGIN
,
63
RECORDER_ERR_OUT_OF_MEMORY
,
64
RECORDER_ERR_ENGINE_ERROR
,
65
RECORDER_ERR_CONFIG_ITEM
,
66
}
67
RECORDER_ERR_CODE
;
68
77
typedef
void (HCIAPI *
Callback_RecorderEventStateChange
)(
78
_MUST_ _IN_
RECORDER_EVENT
eRecorderEvent,
79
_OPT_ _IN_
void
* pUsrParam );
80
88
typedef
void (HCIAPI *
Callback_RecorderRecording
)(
89
_MUST_ _IN_
unsigned
char
* pVoiceData,
90
_MUST_ _IN_
unsigned
int
uiVoiceLen,
91
_OPT_ _IN_
void
* pUsrParam
92
);
93
102
typedef
void (HCIAPI *
Callback_RecorderEventRecogFinish
)(
103
_MUST_ _IN_
RECORDER_EVENT
eRecorderEvent,
104
_MUST_ _IN_
ASR_RECOG_RESULT
*pRecogResult,
105
_OPT_ _IN_
void
* pUsrParam );
106
107
116
typedef
void (HCIAPI *
Callback_RecorderEventRecogProcess
)(
117
_MUST_ _IN_
RECORDER_EVENT
eRecorderEvent,
118
_MUST_ _IN_
ASR_RECOG_RESULT
*pRecogResult,
119
_OPT_ _IN_
void
* pUsrParam );
120
121
130
typedef
void (HCIAPI *
Callback_RecorderEventError
)(
131
_MUST_ _IN_
RECORDER_EVENT
eRecorderEvent,
132
_MUST_ _IN_
HCI_ERR_CODE
eErrorCode,
133
_OPT_ _IN_
void
* pUsrParam );
134
142
typedef
bool (HCIAPI *
Callback_RecorderSetAudioSession
)(
143
_MUST_ _IN_
void
* pExtendParam,
144
_OPT_ _IN_
void
* pUsrParam);
145
149
typedef
struct
_RECORDER_CALLBACK_PARAM {
150
Callback_RecorderEventStateChange
pfnStateChange
;
151
void
*
pvStateChangeUsrParam
;
152
Callback_RecorderRecording
pfnRecording
;
153
void
*
pvRecordingUsrParam
;
154
Callback_RecorderEventRecogFinish
pfnRecogFinish
;
155
void
*
pvRecogFinishUsrParam
;
156
Callback_RecorderEventError
pfnError
;
157
void
*
pvErrorUsrParam
;
158
Callback_RecorderEventRecogProcess
pfnRecogProcess
;
159
void
*
pvRecogProcessParam
;
160
}
RECORDER_CALLBACK_PARAM
;
161
162
/* @} */
163
165
/* @{ */
166
200
RECORDER_ERR_CODE
HCIAPI
hci_asr_recorder_init
(
201
_MUST_ _IN_
const
char
* pszAsrSdkConfig,
202
_MUST_ _IN_
RECORDER_CALLBACK_PARAM
*psCallbackParam);
203
231
RECORDER_ERR_CODE
hci_asr_recorder_set_audio_session_callback
(
232
_MUST_ _IN_
Callback_RecorderSetAudioSession
pfnCallBack ,
233
_OPT_ _IN_
void
* pUsrParam);
234
248
RECORDER_ERR_CODE
HCIAPI
hci_asr_recorder_load_grammar
(
249
_OPT_ _IN_
const
char
* pszAsrSdkConfig,
250
_MUST_ _IN_
const
char
* pszGrammarData,
251
_MUST_ _OUT_
unsigned
int
* pnGrammarId
252
);
253
265
RECORDER_ERR_CODE
HCIAPI
hci_asr_recorder_unload_grammar
(
266
_MUST_ _IN_
unsigned
int
nGrammarId
267
);
268
328
RECORDER_ERR_CODE
HCIAPI
hci_asr_recorder_start
(
329
_MUST_ _IN_
const
char
* pszConfig,
330
_OPT_ _IN_
const
char
* pszGrammarData);
331
343
RECORDER_ERR_CODE
HCIAPI
hci_asr_recorder_cancel
();
344
356
RECORDER_ERR_CODE
HCIAPI
hci_asr_recorder_stop_and_recog
();
357
367
RECORDER_ERR_CODE
HCIAPI
hci_asr_recorder_release
();
368
369
/* @} */
370
/* @} */
372
373
#ifdef __cplusplus
374
}
375
#endif
376
377
#endif // _hci_cloud_asr_recorder_api_header_
生成于 2019年 一月 2日 星期三 17:26:03 , 为 灵云SDK开发手册(C API)使用
1.8.3.1