public class SpeechEvent
extends java.lang.Object
事件类定义用于扩展事件回调中返回的事件ID。所有事件在设置生效后,通过
各业务监听类的onEvent函数回调,如
RecognizerListener.onEvent(int, int, int, Bundle)。应用层可选择性的处
理这些事件。
RecognizerListener.onEvent(int, int, int, Bundle),
SynthesizerListener.onEvent(int, int, int, Bundle),
SpeechUnderstanderListener.onEvent(int, int, int, Bundle),
TranscripterListener.onEvent(int, int, int, Bundle),
VerifierListener.onEvent(int, int, int, Bundle),
WakeuperListener.onEvent(int, int, int, Bundle)| 限定符和类型 | 字段和说明 |
|---|---|
static int |
EVENT_AUDIO_URL
服务端音频url
在消息到达时,
RecognizerListener.onEvent(int, int, int, Bundle)
第4个参数obj,包含数据,通过android.os.Bundle#getString
指定KEY为KEY_EVENT_AUDIO_URL获取. |
static int |
EVENT_IST_AUDIO_FILE
转写音频文件消息
转写功能暂未开放,相关参数设计预留
在录音模式下,成功创建音频文件时返回。
|
static int |
EVENT_IST_CACHE_LEFT
转写缓存剩余
转写功能暂未开放,相关参数设计预留
此消息仅在音频源为-1时需要关注。
|
static int |
EVENT_IST_RESULT_TIME
转写结果等待时间消息
转写功能暂未开放,相关参数设计预留
在转写所有音频都上传完后,服务器可能返回结果处理需要的时间,但也可能不返回。
|
static int |
EVENT_IST_SYNC_ID
转写转写音频同步ID消息
转写功能暂未开放,相关参数设计预留
在消息到达时,通过
TranscripterListener.onEvent(int, int, int, Bundle)
的第二个参数arg1,获取当前写音频同步ID. |
static int |
EVENT_IST_UPLOAD_BYTES
转写已上传字节消息
转写功能暂未开放,相关参数设计预留
在消息到达时,通过
TranscripterListener.onEvent(int, int, int, Bundle)
的第二个参数arg1,获取已确认上传到服务器的字节数. |
static int |
EVENT_IVW_RESULT
唤醒识别结果
在消息到达时,
WakeuperListener.onEvent(int, int, int, Bundle)第2个参数arg1包含是否为
最后一个结果:1为是,0为否;第4个参数obj中包含数据,通过android.os.Bundle#get(String)
指定KEY为KEY_EVENT_IVW_RESULT获取. |
static int |
EVENT_NETPREF
网络状态消息
网络状态是SDK通过测试网络连接返回的[0, 100]范围的状态值,值越高,
表示网络状态越好。
|
static int |
EVENT_RECORD_DATA
录音数据消息
听写、识别、语义业务的录音数据消息。
|
static int |
EVENT_RECORD_STOP
录音结束
在停止录音后,返回此消息。
|
static int |
EVENT_SESSION_BEGIN
会话开始消息
在会话开始成功后返回
|
static int |
EVENT_SESSION_END
会话结束消息
在会话结束前返回
|
static int |
EVENT_SESSION_ID
服务端会话id
在消息到达时,可通过onEvent(int, int, int, android.os.Bundle)的第4个参数obj,调用
android.os.Bundle#getString指定Key为KEY_EVENT_SESSION_ID,
获取服务端会话id. |
static int |
EVENT_SPEECH_START
开始处理录音数据
在录音开始后,SDK获取到第一段音频数据时,返回此消息。
|
static int |
EVENT_TTS_BUFFER
TTS合成数据消息
在消息到达时,
SynthesizerListener.onEvent(int, int, int, Bundle)
的第4个参数obj中包含数据,通过android.os.Bundle#getByteArray
指定KEY为EVENT_TTS_BUFFER获取. |
static int |
EVENT_TTS_CANCEL
合成取消事件
合成会话被取消时,返回此消息。
|
static int |
EVENT_VAD_EOS
VAD后端点消息
在检测到VAD后端点时抛出,暂时只有身份验证的声纹业务用到
|
static int |
EVENT_VOLUME
音量消息
在得到音量时抛出,暂时只有身份验证的声纹业务用到
|
static java.lang.String |
KEY_EVENT_AUDIO_URL
服务端音频url key
用于在
EVENT_AUDIO_URL事件到达时,获取数据的KEY。 |
static java.lang.String |
KEY_EVENT_IST_UPLOAD_COMPLETE
转写是否已上传完标记KEY
转写功能暂未开放,相关参数设计预留
用于在
EVENT_IST_UPLOAD_BYTES事件中,获取是否已上传完成。 |
static java.lang.String |
KEY_EVENT_IVW_RESULT
唤醒识别结果KEY
用于在
EVENT_IVW_RESULT事件到达时,获取结果数据的KEY。 |
static java.lang.String |
KEY_EVENT_RECORD_DATA
音频数据key
用于在
EVENT_RECORD_DATA事件到达时,获取音频数据的KEY。 |
static java.lang.String |
KEY_EVENT_SESSION_ID
服务端会话 key
用于在
EVENT_SESSION_ID事件到达时,获取会话ID值的KEY。 |
static java.lang.String |
KEY_EVENT_TTS_BUFFER
TTS 取音频数据key
用于在
EVENT_TTS_BUFFER事件到达时,获取音频数据的KEY。 |
| 构造器和说明 |
|---|
SpeechEvent() |
public static final int EVENT_NETPREF
网络状态是SDK通过测试网络连接返回的[0, 100]范围的状态值,值越高, 表示网络状态越好。网络状态值通过onEvent的参数2获取。
SpeechConstant.ASR_NET_PERF,
常量字段值public static final int EVENT_SESSION_ID
在消息到达时,可通过onEvent(int, int, int, android.os.Bundle)的第4个参数obj,调用
android.os.Bundle#getString指定Key为KEY_EVENT_SESSION_ID,
获取服务端会话id.
KEY_EVENT_SESSION_ID,
常量字段值public static final java.lang.String KEY_EVENT_SESSION_ID
用于在EVENT_SESSION_ID事件到达时,获取会话ID值的KEY。
EVENT_SESSION_ID,
常量字段值public static final int EVENT_TTS_BUFFER
在消息到达时,SynthesizerListener.onEvent(int, int, int, Bundle)
的第4个参数obj中包含数据,通过android.os.Bundle#getByteArray
指定KEY为EVENT_TTS_BUFFER获取.
public static final java.lang.String KEY_EVENT_TTS_BUFFER
用于在EVENT_TTS_BUFFER事件到达时,获取音频数据的KEY。
EVENT_TTS_BUFFER,
常量字段值public static final int EVENT_TTS_CANCEL
合成会话被取消时,返回此消息。
public static final int EVENT_RECORD_DATA
听写、识别、语义业务的录音数据消息。在消息到达时, RecognizerListener.onEvent(int, int, int, Bundle)
的第3个参数为音量,第4个参数obj中包含音频数据,通过android.os.Bundle#getByteArray
指定KEY为KEY_EVENT_RECORD_DATA获取。
KEY_EVENT_RECORD_DATA,
常量字段值public static final java.lang.String KEY_EVENT_RECORD_DATA
用于在EVENT_RECORD_DATA事件到达时,获取音频数据的KEY。
EVENT_RECORD_DATA,
常量字段值public static final int EVENT_IVW_RESULT
在消息到达时,WakeuperListener.onEvent(int, int, int, Bundle)第2个参数arg1包含是否为
最后一个结果:1为是,0为否;第4个参数obj中包含数据,通过android.os.Bundle#get(String)
指定KEY为KEY_EVENT_IVW_RESULT获取.
public static final java.lang.String KEY_EVENT_IVW_RESULT
用于在EVENT_IVW_RESULT事件到达时,获取结果数据的KEY。
EVENT_IVW_RESULT,
常量字段值public static final int EVENT_SPEECH_START
在录音开始后,SDK获取到第一段音频数据时,返回此消息。随后,如果有设置
抛出录音数据,则会通过
EVENT_RECORD_DATA返回第一段音频数据。此消息一般在
RecognizerListener.onBeginOfSpeech()回调后到达。
public static final int EVENT_RECORD_STOP
在停止录音后,返回此消息。无论是SDK通过SpeechConstant.VAD_EOS检测到尾端点,
还是应用层主动结束录音,都会返回此消息。
public static final int EVENT_AUDIO_URL
在消息到达时,RecognizerListener.onEvent(int, int, int, Bundle)
第4个参数obj,包含数据,通过android.os.Bundle#getString
指定KEY为KEY_EVENT_AUDIO_URL获取.
public static final java.lang.String KEY_EVENT_AUDIO_URL
用于在EVENT_AUDIO_URL事件到达时,获取数据的KEY。
EVENT_AUDIO_URL,
常量字段值public static final int EVENT_IST_AUDIO_FILE
转写功能暂未开放,相关参数设计预留
在录音模式下,成功创建音频文件时返回。可通过
TranscripterListener.onEvent(int, int, int, Bundle)
第4个参数obj调用android.os.Bundle#getString
指定Key为SpeechConstant.IST_AUDIO_PATH,获取音频文件绝对路径.
或通过SpeechTranscripter.getParameter(java.lang.String),
指定Key为SpeechConstant.IST_AUDIO_PATH,获取音频文件绝对路径.
public static final int EVENT_IST_UPLOAD_BYTES
转写功能暂未开放,相关参数设计预留
在消息到达时,通过TranscripterListener.onEvent(int, int, int, Bundle)
的第二个参数arg1,获取已确认上传到服务器的字节数.
若当前音频源为非写音频模式,还可通过TranscripterListener.onEvent(int, int, int, Bundle)
的第三个参数arg2,获取当前所有音频的字节大小.录音模式时,由于所有音频字节大小会变。
当停止音频输入后(等待录音时间超时
SpeechConstant.KEY_SPEECH_TIMEOUT,
,或调用SpeechTranscripter.stopTranscripting()),
且服务器收到所有音频时,第四个参数obj,将包含完成标记的布尔值(true),可通过obj调用
android.os.Bundle#getBoolean指定KEY为KEY_EVENT_IST_UPLOAD_COMPLETE获取。
此消息可能多次返回.
SpeechConstant.IST_AUDIO_UPLOADED,
SpeechTranscripter.writeAudio(byte[], int, int),
SpeechTranscripter.startTranscripting(com.iflytek.cloud.TranscripterListener),
SpeechTranscripter.stopTranscripting(),
常量字段值public static final int EVENT_IST_CACHE_LEFT
转写功能暂未开放,相关参数设计预留
此消息仅在音频源为-1时需要关注。
在调用 SpeechTranscripter.writeAudio(byte[], int, int)写音频时,应该关注此事件。
此事件在调用写音频接口、及音频最后被写入底层库时分别回调一次。当事件回调时,通过
TranscripterListener.onEvent(int, int, int, Bundle)
的第二个参数arg1,获取当前剩余的缓存大小,当缓存小于要写入的音频时,应该先暂停写音
频数据,直到下次缓存大小大于要写入的音频时.
最大缓存为128KByte。
SpeechTranscripter.writeAudio(byte[], int, int),
常量字段值public static final java.lang.String KEY_EVENT_IST_UPLOAD_COMPLETE
EVENT_IST_UPLOAD_BYTES,
常量字段值public static final int EVENT_IST_RESULT_TIME
转写功能暂未开放,相关参数设计预留
在转写所有音频都上传完后,服务器可能返回结果处理需要的时间,但也可能不返回。
在消息到达时,通过
TranscripterListener.onEvent(int, int, int, Bundle)
的第二个参数arg1,获取当前结果需要的时间.
此消息可能多次返回,返回时间不定,且不一定会返回。若应用层已经获取到最后的结果,可直接忽略此参数。
否则,应用层应考虑等待结果时间太长时,结束当次的等待,一段时间后,通过下一次会话中使用续传。关于
续传的介绍,请参考SpeechTranscripter类说明。
public static final int EVENT_IST_SYNC_ID
转写功能暂未开放,相关参数设计预留
在消息到达时,通过 TranscripterListener.onEvent(int, int, int, Bundle)
的第二个参数arg1,获取当前写音频同步ID.
此消息可能多次返回.
SpeechConstant.IST_SYNC_ID,
常量字段值public static final int EVENT_SESSION_BEGIN
在会话开始成功后返回
SpeechTranscripter.startTranscripting(com.iflytek.cloud.TranscripterListener),
SpeechTranscripter.writeAudio(byte[], int, int),
常量字段值public static final int EVENT_SESSION_END
在会话结束前返回
SpeechTranscripter.stopTranscripting(),
SpeechTranscripter.cancel(),
常量字段值public static final int EVENT_VOLUME
在得到音量时抛出,暂时只有身份验证的声纹业务用到
public static final int EVENT_VAD_EOS
在检测到VAD后端点时抛出,暂时只有身份验证的声纹业务用到