# Java SDK 基础类

# 类SpeechConstant

java.lang.Object
com.iflytek.cloud.speech.SpeechConstant
public class SpeechConstant
extends java.lang.Object

# 公共常量

本类定义语音SDK用到的参数名。

除了初始化SDK时,可通过SpeechUtility.createUtility(String) (opens new window)设置参数外, 其他如合成,识别等会话的参数设置需要通过相关类的 setParameter 函数来设置。

SDK设置参数值均以String型的字符串传入,对于本类中说明的值范围中可能涉及的 int等类型的数值,请自行转换到对应的String字符串值后传给SDK,如 String.valueOf(int)。同样的,通过获取参数值函数返回的值,也以 String值表示,请自行转换到对应的值,如Integer.parseInt(String)

在参数值域中,如果只有{ null, 0, 1 }的范围,则表示这是布尔(boolean)型的参数, 其中,null表示空,0表示false,1表示true。

# 字段概要

限定符和类型 字段和说明
static java.lang.String ACCENT方言 每一种语言区域,一般还有不同的方言,通过此参数设置不同的方言参数。
static java.lang.String APPID应用ID 初始化SDK时,需要传入APPID值。
static java.lang.String ASR_AUDIO_PATH识别音频保存路径 通过此参数,可以在识别完成后在本地保存一个音频文件(目前保存为Windows pcm)。
static java.lang.String ASR_NBEST句子多侯选 听写通过设置此参数,获取在发音相似时的句子多侯选结 果。
static java.lang.String ASR_NET_PERF网络状态反馈值 通过此参数,获取网络连接状态(仅在识别和听写)。
static java.lang.String ASR_PTT标点符号 通过此参数,设置听写文本结果是否含标点符号。
static java.lang.String ASR_SOURCE_PATH音频源路径 java平台暂不支持 外部音频文件的路径,在直接听写、识别音频文件时可通过设置此参数,传入文件的路 径,SDK自动读取文件进行识别,不用应用层调用WriteAudio接口。
static java.lang.String ASR_WBEST词语多侯选 听写通过设置此参数,获取在发音相似时的词语多侯选结 果。
static java.lang.String AUDIO_FORMAT合成音频文件格式 java平台暂不支持参数
static java.lang.String AUDIO_SOURCE音频源 设置使用SDK自带的录音机,还是应用传入音频流方式。
static java.lang.String BACKGROUND_SOUND背景音乐 背景音乐 默认值:无,可选:1 是否必须设置:否 默认值:0 值范围:{ null, 0, 1 }
static java.lang.String DATA_TYPE数据类型 设置个性化数据上传的数据类型。
static java.lang.String DOMAIN应用领域 服务器为不同的应用领域,定制了不同的听写匹配引擎,使用对应的领域能获取更高的匹配率。
static java.lang.String ENG_ASR常量值:识别引擎
static java.lang.String ENG_IVW常量值:唤醒引擎
static java.lang.String ENG_TTS常量值:合成引擎
static java.lang.String ENGINE_MODE客户端引擎选择模式 java平台暂不支持此参数。
static java.lang.String ENGINE_TYPE引擎类型 设置使用的引擎类型:在线、离线。
static java.lang.String FILTER_AUDIO_TIME需要过滤的音频时长 部分系统存在启动录音后,有短暂的音频跳变,通过设置此参数,可以过滤掉此部分音频, 提高识别效果。
static java.lang.String GRAMMAR_LIST语法列表名 java平台暂不支持此参数 在本地语法识别时,在构建语法后,可通过SpeechRecognizer.updateLexicon(String, String, LexiconListener) (opens new window)更新语法中 指定的词表,如本地语法“call”中的"contact",则指定本参数值为"call",在SpeechRecognizer.updateLexicon(String, String, LexiconListener) (opens new window)的参数1中 指定值为"contact"。
static java.lang.String GRAMMAR_NAME语法名称 上传语法时的语法名字。
static java.lang.String GRAMMAR_TYPE语法类型 在使用识别识别时,需要设置与使用的类型一致语法类型的参数。
static java.lang.String KEY_SPEECH_TIMEOUT语音输入超时时间 设置录取音频的最长时间。
static java.lang.String LANGUAGE语言区域 听写可通过设置此参数,选择要使用的语言区域,参考 Java标准组织定义 Locale
static java.lang.String LIB_NAME_3232位系统下的共享库名字 自定义在32位的系统下,初始化SDK时,要加载的库名字。
static java.lang.String LIB_NAME_6464位系统下的共享库名字 自定义在64位的系统下,初始化SDK时,要加载的库名字。
static java.lang.String LOCAL_GRAMMAR本地语法ID java平台暂不支持 在使用本地功能时,通过设置此参数,使用本地语法识别。
static java.lang.String MODE_MSC常量值:MSC模式
static java.lang.String NET_TIMEOUT网络连接超时时间 设置等待结果最长的时间(毫秒)。
static java.lang.String PARAMS多参数设置 通过本参数可能同时设置多个参数值。
static java.lang.String PITCH合成语调 通过此参数,设置合成返回音频的语调。
static java.lang.String RESULT_TYPE结果类型 听写,识别(命令词)返回文本结果类型。
static java.lang.String SAMPLE_RATE音频采样率 通过此参数设置音频的采样率。
static java.lang.String SPEED合成语速 通过此参数,设置合成返回音频的语速。
static java.lang.String STREAM_TYPE合成播放流类型 java平台暂不支持此参数。
static java.lang.String TEXT_ENCODING文本编码格式 合成传入文本,或构建语法、个性化词典,听写、识别结果的文本编码格式。
static java.lang.String TTS_AUDIO_PATH合成音频保存路径 通过此参数,可以在合成完成后在本地保存一个音频文件(目前保存为Windows pcm)。
static java.lang.String TTS_BUFFER_EVENT是否启用合成音频流事件 当启用合成音频流事件时,通过SynthesizerListener.onEvent(int, int, int, int, Object, Object) (opens new window) 返回SpeechEvent.EVENT_TTS_BUFFER (opens new window)事件。
static java.lang.String TTS_BUFFER_TIME合成播放缓冲时间 在合成使用SDK进行播放时,设置此参数使合成音频更快播放。
static java.lang.String TYPE_CLOUD常量值:云端引擎
static java.lang.String TYPE_LOCAL常量值:本地引擎
static java.lang.String VAD_BOS前端点超时 开始录入音频后,音频前面部分最长静音时长。
static java.lang.String VAD_EOS后端点超时 是否必须设置:否 开始录入音频后,音频后面部分最长静音时长。
static java.lang.String VOICE_NAME合成发音人 通过此参数,在合成中使用不同的语言和方言、性别等。
static java.lang.String VOLUME合成音量 通过此参数,设置合成返回音频的音量。
static java.lang.String WAP_PROXY网络类型 设置当前应用使用的网络类型。

# 方法概要

# 从类继承的方法 java.lang.Object

equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

# 字段详细资料

# 接口SpeechListener

public interface SpeechListener

# 通用回调类

通过回调类用于数据上传等不是特定业务的会话回调,如个性化数据上传等。 周一个函数,在不同的业务中回调的数据将可能代表不一样的意义。

  • 从以下版本开始:

    version:1015

  • 作者:

    iFlytek 讯飞开放平台 (opens new window)

    # 方法概要

    限定符和类型 方法和说明
    void onBufferReceived(byte[] buffer)数据回调 数据回调,根据业务类型不同,可能回调多次,也可能一次也不回调。
    void onCompleted(SpeechError error)结束回调 回调本函数时,当前监听的会话结束。
    void onEvent(int eventType, java.lang.String params)事件回调 事件回调通过应用层相关的事件消息,根据不同的业务,回调的事件类型 可能不一样。

    # 方法详细资料

    • # onEvent

      void onEvent(int eventType,
                   java.lang.String params)
      

      # 事件回调

      事件回调通过应用层相关的事件消息,根据不同的业务,回调的事件类型 可能不一样。

    • # onBufferReceived

      void onBufferReceived(byte[] buffer)
      

      # 数据回调

      数据回调,根据业务类型不同,可能回调多次,也可能一次也不回调。

      • 参数:

        buffer - 服务端返回的数据,如在声纹获取密码时,表示密码数据。

    • # onCompleted

      void onCompleted(SpeechError error)
      

      # 结束回调

      回调本函数时,当前监听的会话结束。当本函数的参数1非null时,表示当前 会话有错误,具体错误参考SpeechError (opens new window);当参数1为null时,表示当前 会话成功。

# 类SpeechEvent

  • java.lang.Object

    • com.iflytek.cloud.speech.SpeechEvent
    public class SpeechEvent
    extends java.lang.Object
    

    # 事件类

    事件类定义用于扩展事件回调中返回的事件ID。所有事件在设置生效后,通过 各业务监听类的onEvent函数回调,如RecognizerListener.onEvent(int, int, int, String) (opens new window)。应用层可选择性的处 理这些事件。

    • 从以下版本开始:

      version:1015

    • 作者:

      iFlytek 讯飞开放平台 (opens new window)

    • 另请参阅:

      RecognizerListener.onEvent(int, int, int, String) (opens new window),

      # 字段概要

      限定符和类型 字段和说明
      static int EVENT_NETPREF网络状态消息 网络状态是SDK通过测试网络连接返回的[0, 100]范围的状态值,值越高, 表示网络状态越好。
      static int EVENT_TTS_BUFFER合成音频流事件 当通过合成音频流事件参数SpeechConstant.TTS_BUFFER_EVENT, 启用音频流事件后,在SDK收到音频时,将返回此事件。

      # 构造器概要

      构造器和说明
      SpeechEvent()

      # 方法概要

      # 从类继承的方法 java.lang.Object

      equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      

      # 字段详细资料

      • # EVENT_NETPREF

        public static final int EVENT_NETPREF
        

        # 网络状态消息

        网络状态是SDK通过测试网络连接返回的[0, 100]范围的状态值,值越高, 表示网络状态越好。网络状态值通过onEvent的参数2获取。

      • # EVENT_TTS_BUFFER

        public static final int EVENT_TTS_BUFFER
        

        # 合成音频流事件

        当通过合成音频流事件参数SpeechConstant.TTS_BUFFER_EVENT, 启用音频流事件后,在SDK收到音频时,将返回此事件。

        此事件到达时,将通过 arg1, arg2, arg3, obj1, obj2 分别返回已合成文本所 占百分比 percent, 当前音频流对应的文本开始位置 begin pos, 文本结束位置 end pos, 以及音频流数据 ArrayList<byte[]>( 应用需要把Object 转 为 ArrayList<byte[]>类型),spellInfo(仅在spellInfo存在时值有效, 应用需要把 Object 转换成 String 类型)。

        注意:在事件回调中,对传递的音频流 ArrayList 对象,及其里面数 组的任何修改,将直接影响SDK合成播放和保存的音频数据。

      # 构造器详细资料

      • # SpeechEvent

        public SpeechEvent()
        

# 类Version

  • ava.lang.Object

    • com.iflytek.cloud.speech.Version
    public class Version
    extends java.lang.Object
    

    # 版本信息类

    • 作者:

      iFlytek 讯飞开放平台 (opens new window)

      # 构造器概要

      构造器和说明
      Version()

      # 方法概要

      限定符和类型 方法和说明
      static java.lang.String getVersion()获取控件版本号

      # 从类继承的方法 java.lang.Object

      equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      

      # 构造器详细资料

      • # Version

        public Version()
        

      # 方法详细资料

      • # getVersion

        public static java.lang.String getVersion()
        

        # 获取控件版本号

        • 返回:

          版本号,如:3.5.1027(控件版本号字段).1040(底层MSC字段)

# 类Setting

java.lang.Object
com.iflytek.cloud.speech.Setting
public class Setting
extends java.lang.Object

# 设置

设置是否显示控制台日志,是否保存共享库调试日志等。

SDK会打印两种日志:Msc.jar的控制台日志, 及libmsc32.so,libmsc64.so,msc32.dll, msc64.dll的共享库日志。

# 嵌套类概要

嵌套类:

限定符和类型 类和说明
static class Setting.LOG_LEVEL
共享库日志级别 共享库日志按重要程度区分了级别,目前控制台日志则没有相应的日志级别。

# 字段概要

字段:

限定符和类型 字段和说明
static boolean DEFAULT_IS_SAVE_TEST_LOG
是否保存性能日志文件默认值
static boolean DEFAULT_IS_SHOW_LOG
是否打印日志(控制台和共享库)默认值
static java.lang.String DEFAULT_LOG_PATH
共享库日志默认路径

# 方法概要

所有方法:

限定符和类型 方法和说明
static Setting.LOG_LEVEL getLogLevel()
获取共享库日志级别
static java.lang.String getLogPath()
获取共享库日志保存路径
static boolean getSaveTestLog()
获取是否保存性能日志
static boolean getShowLog()
获取是否显示日志信息
static void setLogLevel(Setting.LOG_LEVEL level)
设置共享库日志级别 共享库日志级别,默认值为Setting.LOG_LEVEL.none,应用层根据调试的需要, 可以设置一个自己需要的级别,或使用默认的值。
static void setLogPath(java.lang.String path)
设置共享库日志保存路径 共享库日志路径,默认值为DEFAULT_LOG_PATH,即当前应用运行路径。
static void setSaveTestLog(boolean isSaveTestLog)
设置是否保存性能日志 性能日志有助于SDK开发人员了解SDK的性能情况,应用层可忽略此日志。
static void setShowLog(boolean isShowLog)
设置是否显示日志信息 设置是否显示控制台日志和共享库日志, 默认值为DEFAULT_IS_SHOW_LOG。
从类继承的方法 java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

# 字段详细资料

# DEFAULT_LOG_PATH

public static final java.lang.String DEFAULT_LOG_PATH

共享库日志默认路径

另请参阅:
常量字段值

# DEFAULT_IS_SHOW_LOG

public static final boolean DEFAULT_IS_SHOW_LOG

是否打印日志(控制台和共享库)默认值

另请参阅:
常量字段值

# DEFAULT_IS_SAVE_TEST_LOG

public static final boolean DEFAULT_IS_SAVE_TEST_LOG

是否保存性能日志文件默认值

另请参阅:
常量字段值

# 方法详细资料

# setLogLevel

public static void setLogLevel(Setting.LOG_LEVEL level)

设置共享库日志级别
共享库日志级别,默认值为Setting.LOG_LEVEL.none,应用层根据调试的需要, 可以设置一个自己需要的级别,或使用默认的值。在应用发布时,为了减少日志的开销,应该使用默认的日志级别。
共享库的日志级别,只有在共享库日志保存路径设置有效时,才会生效。

参数:
level - 日志级别

另请参阅:
Setting.LOG_LEVEL, getLogLevel(), setLogPath(java.lang.String)

# getLogLevel

public static Setting.LOG_LEVEL getLogLevel()

获取共享库日志级别

返回:
共享库日志级别,默认值为Setting.LOG_LEVEL.none

另请参阅:
setLogLevel(com.iflytek.cloud.speech.Setting.LOG_LEVEL)

# setLogPath

public static void setLogPath(java.lang.String path)

设置共享库日志保存路径
共享库日志路径,默认值为DEFAULT_LOG_PATH,即当前应用运行路径。 在应用层设置的路径有效时,共享库日志才会保存。

参数:
path - 共享库日志路径值,含文件名。

另请参阅:
setLogLevel(com.iflytek.cloud.speech.Setting.LOG_LEVEL), getLogPath()

# getLogPath

public static java.lang.String getLogPath()

获取共享库日志保存路径

返回:
获取共享库日志保存路径

另请参阅:
setLogPath(java.lang.String)

# setShowLog

public static void setShowLog(boolean isShowLog)

设置是否显示日志信息
设置是否显示控制台日志和共享库日志, 默认值为DEFAULT_IS_SHOW_LOG。

为了帮助SDK开发人员在出问题时,尽快定位,可能会在日志中打印APPID等私密信息, 为了您的应用安全,以及不影响运行的效率,请勿在应用的发布版本中显示日志。

参数:
isShowLog - false为不显示,true为显示

另请参阅:
getShowLog()

# getShowLog

public static boolean getShowLog()

获取是否显示日志信息

返回:
设置是否显示控制台日志和共享库日志。

另请参阅:
setShowLog(boolean)

# setSaveTestLog

public static void setSaveTestLog(boolean isSaveTestLog)

设置是否保存性能日志
性能日志有助于SDK开发人员了解SDK的性能情况,应用层可忽略此日志。

参数:
isSaveTestLog - 是否保存性能日志,默认值DEFAULT_IS_SAVE_TEST_LOG

另请参阅:
getSaveTestLog()

# getSaveTestLog

public static boolean getSaveTestLog()

获取是否保存性能日志

返回:
是否保存性能日志

另请参阅: setSaveTestLog(boolean)

# 枚举Setting.LOG_LEVEL

java.lang.Object
java.lang.Enum<Setting.LOG_LEVEL>
com.iflytek.cloud.speech.Setting.LOG_LEVEL

所有已实现的接口:

java.io.Serializable, java.lang.Comparable<Setting.LOG_LEVEL>

封闭类: Setting

public static enum Setting.LOG_LEVEL
extends java.lang.Enum<Setting.LOG_LEVEL>

共享库日志级别
共享库日志按重要程度区分了级别,目前控制台日志则没有相应的日志级别。

另请参阅: Setting.setLogLevel(com.iflytek.cloud.speech.Setting.LOG_LEVEL)

# 枚举常量概要

# 枚举常量

枚举常量和说明:

all
所有日志

detail
高,异常分析需要的级别

low
低,只打印主要日志信息

none
不打印

normal
中,打印基本日志信息

# 方法概要

所有方法:

限定符和类型 方法和说明
static Setting.LOG_LEVEL valueOf(java.lang.String name)
返回带有指定名称的该类型的枚举常量。
static Setting.LOG_LEVEL[] values()
按照声明该枚举类型的常量的顺序, 返回 包含这些常量的数组。
从类继承的方法 java.lang.Enum
compareTo, equals, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
从类继承的方法 java.lang.Object
getClass, notify, notifyAll, wait, wait, wait

# 枚举常量详细资料

# all

public static final Setting.LOG_LEVEL all

所有日志

# detail

public static final Setting.LOG_LEVEL detail

高,异常分析需要的级别

# normal

public static final Setting.LOG_LEVEL normal

中,打印基本日志信息

# low

public static final Setting.LOG_LEVEL low

低,只打印主要日志信息

# none

public static final Setting.LOG_LEVEL none

不打印

# 方法详细资料

# values

public static Setting.LOG_LEVEL[] values()

按照声明该枚举类型的常量的顺序, 返回 包含这些常量的数组。该方法可用于迭代 常量, 如下所示:

for (Setting.LOG_LEVEL c : Setting.LOG_LEVEL.values())
    System.out.println(c);

返回:
按照声明该枚举类型的常量的顺序返回的包含这些常量的数组

# valueOf

public static Setting.LOG_LEVEL valueOf(java.lang.String name)

返回带有指定名称的该类型的枚举常量。 字符串必须与用于声明该类型的枚举常量的 标识符完全匹配。(不允许有多余 的空格字符。)

参数:
name - 要返回的枚举常量的名称。

返回:
返回带有指定名称的枚举常量

抛出:
java.lang.IllegalArgumentException - 如果该枚举类型没有带有指定名称的常量
java.lang.NullPointerException - 如果参数为空值

# 类ResourceUtil

java.lang.Object
com.iflytek.cloud.speech.ResourceUtil
public class ResourceUtil
extends java.lang.Object

资源辅助类
资源辅助类,将资源目录,转换为SDK要求的目录形式。

SDK要求的文件目录格式如下(由此类的函数生成,不关心的用户可忽略),两个文件间, 以英文分号";"分隔:
fo|file_info|offset|length;
其中fo表示文件路径方式。
关于资源路径设置,请参考具体的业务类说明。

SDK加载离线资源有三种方式:
1、通过SpeechUtility.createUtility(java.lang.String) (opens new window)初始化SDK时加载,通过 设置ENGINE_START参数,并根据业务不同,指定以下一个或多个的资源路径参数:
TTS_RES_PATH
ASR_RES_PATH

2、通过SpeechUtility.setParameter(String, String) (opens new window)加载,通过 设置ENGINE_START参数,并根据业务不同,指定以下一个或多个的资源路径参数:
TTS_RES_PATH
ASR_RES_PATH

3、通过各业务开始会话的函数加载,通过各业务的setParameter函数,如 SpeechRecognizer.setParameter(String, String) (opens new window),根据业务不同, 设置以下资源路径参数中的一个:
TTS_RES_PATH
ASR_RES_PATH

在同一业务,新的资源加载后,上一个资源将自动被释放。如合成中,如果各发音人资源文件是 分开的,则在加载当前发音人资源后,上一发音人资源将自动被释放。如果要释放当前的资源, 而不加载新的资源,需要同时销毁离线引擎,有以下三种方式:
1、通过SpeechUtility.setParameter(String, String) (opens new window),设置参数 ENGINE_DESTROY即可。

2、通过各业务的destory函数销毁:
SpeechRecognizer.destroy() (opens new window)
SpeechSynthesizer.destroy() (opens new window)

3、通过SpeechUtility.destroy() (opens new window)销毁。

另外,在应用退出后,所有应用相关的资源会被销毁。因为销毁引擎后,重新启动引擎的时间要比 直接更换资源长(会使首次会话的时间变长),所以如果仅是短暂的停止使用,建议不需要销毁资源。

另请参阅:
SpeechConstant.ENGINE_TYPE (opens new window), SpeechUtility.createUtility(java.lang.String) (opens new window), SpeechUtility.setParameter(java.lang.String, java.lang.String) (opens new window), SpeechRecognizer.setParameter(String, String) (opens new window), SpeechSynthesizer.setParameter(String, String) (opens new window)

# 字段概要

字段

限定符和类型 字段和说明
static java.lang.String ASR_RES_PATH
识别资源路径 在离线识别时,首次会话,或切换识别资源时,需要设置识别资源路径。
static java.lang.String ENGINE_DESTROY
销毁引擎 通过调用SpeechUtility.setParameter(String, String)设置此参数 以销毁引擎,并释放资源内存。
static java.lang.String ENGINE_START
启动引擎 通过设置此参数,启动离线引擎。
static java.lang.String GRM_BUILD_PATH
语法构建目录 在使用离线语法时,需要构建语法并保存到本地,在构建和使用语法时,都需要设置语法的构 建目录。
static java.lang.String TTS_RES_PATH合成资源路径 在离线合成时,首次会话,或切换合成资源时,需要设置资源路径。

# 构造器概要

构造器

构造器和说明
ResourceUtil()

# 方法概要

# 所有方法

限定符和类型 方法和说明
static java.lang.String generateResourcePath(java.lang.String path)
生成资源路径 传入文件路吃径,生成SDK要求的路径值,用于各业务离线功能时,传入 资源路径。
从类继承的方法 java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

# 字段详细资料

# ENGINE_START

public static final java.lang.String ENGINE_START

启动引擎
通过设置此参数,启动离线引擎。在离线功能使用时,首次设置资源路径时,需要设置此参 数启动引擎。关于设置的方式,参考类说明。

启动引擎参数值因业务类型而异:
合成:SpeechConstant.ENG_TTS (opens new window)
识别:SpeechConstant.ENG_ASR (opens new window)

是否必须设置:是(在首次使用离线功能时)

默认值:null

值范围:见上文

另请参阅:
ENGINE_DESTROY, 常量字段值

# ENGINE_DESTROY

public static final java.lang.String ENGINE_DESTROY

销毁引擎
通过调用SpeechUtility.setParameter(String, String)设置此参数 以销毁引擎,并释放资源内存。(通过destory函数销毁引擎时,则不需要设置此参数,参考类说明)

是否必须设置:否

默认值:null

值范围:参考ENGINE_START说明

另请参阅:
ENGINE_START, 常量字段值

# ASR_RES_PATH

public static final java.lang.String ASR_RES_PATH

识别资源路径
在离线识别时,首次会话,或切换识别资源时,需要设置识别资源路径。 资源路径值需要通过generateResourcePath(java.lang.String)生成SDK要求的格式。

是否必须设置:是(离线识别时)

默认值:null

值范围:见上文说明

另请参阅:
TTS_RES_PATH, 常量字段值

# GRM_BUILD_PATH

public static final java.lang.String GRM_BUILD_PATH

语法构建目录
在使用离线语法时,需要构建语法并保存到本地,在构建和使用语法时,都需要设置语法的构 建目录。与识别资源路径值不一样的是,语法的路径值,不需要通过generateResourcePath(java.lang.String) 生成SDK要求的格式。

是否必须设置:是(离线语法识别时)

默认值:null

值范围:有效的文件夹径值(含文件名)

另请参阅:
常量字段值

# TTS_RES_PATH

public static final java.lang.String TTS_RES_PATH

合成资源路径
在离线合成时,首次会话,或切换合成资源时,需要设置资源路径。 资源路径值需要通过generateResourcePath(java.lang.String)生成SDK要求的格式。 同时,合成设置资源路径时,必须同时设置发音人参数 SpeechConstant.VOICE_NAME,值为资源中包含的 其中一个发音人名参数。

是否必须设置:是(离线合成时)

默认值:null

值范围:见上文说明

另请参阅: ASR_RES_PATH, 常量字段值

# 构造器详细资料

# ResourceUtil

public ResourceUtil()

# 方法详细资料

# generateResourcePath

public static java.lang.String generateResourcePath(java.lang.String path)

生成资源路径
传入文件路吃径,生成SDK要求的路径值,用于各业务离线功能时,传入 资源路径。

参数:
path - 原资源路径

返回:
SDK要求的资源路径值

# 异常错误SpeechError

java.lang.Object
java.lang.Throwable
java.lang.Exception
com.iflytek.cloud.speech.SpeechError
所有已实现的接口:
java.io.Serializable
public class SpeechError
extends java.lang.Exception

# 错误信息类

当业务会话出现错误时,通过onError函数,返回类对象。

应用层可通过此类获取错误描述信息,以及具体的错误码。应用层只使用 回调返回的现成对象,非必要情况下,不必在应用层实例化本类对象。

另请参阅:
ErrorCode, 序列化表格

# 字段概要

字段:

限定符和类型 字段和说明
static int ERROR_AUDIO_RECORD
错误类型: 启动录音失败
static int ERROR_BROWSER_NOT_INSTALLED
错误类型:系统未安装浏览器,请安装后再查看
static int ERROR_EMPTY_UTTERANCE
错误类型:无有效的文本信息
static int ERROR_ENGINE
错误类型:引擎错误
static int ERROR_FILE_ACCESS
错误类型:无法读写文件
static int ERROR_IN_USE
错误类型:网络繁忙,请稍候
static int ERROR_INSUFFICIENT_PERMISSIONS
错误类型:未设置有效权限
static int ERROR_INTERRUPT
错误类型:打断(唤醒)
static int ERROR_INVALID_DATA
错误类型:上传数据格式不正确
static int ERROR_INVALID_ENCODING
错误类型:无法支持的编码格式
static int ERROR_INVALID_GRAMMAR
错误类型:未找到有效的语法文件
static int ERROR_INVALID_LOCAL_RESOURCE
错误类型:无法找到本地资源
static int ERROR_INVALID_PARAM
错误类型:无效的参数
static int ERROR_INVALID_RESULT
错误类型:无法解析的结果
static int ERROR_LOGIN
错误类型:用户校验失败
static int ERROR_LOGIN_INVALID_PWD
错误类型:密码错误
static int ERROR_LOGIN_INVALID_USER
错误类型:无效的用户名
static int ERROR_MEMORY_WRANING
错误类型:内存不足
static int ERROR_NET_EXPECTION
错误类型:网络连接发生异常
static int ERROR_NETWORK_TIMEOUT
错误类型:网络连接超时
static int ERROR_NO_MATCH
错误类型:没有匹配的结果
static int ERROR_NO_NETWORK
错误类型:没有检查到网络
static int ERROR_PERMISSION_DENIED
错误类型:未经授权的语音应用
static int ERROR_PLAY_MEDIA
错误类型:播放音频错误
static int ERROR_SERVER_CONNECT
错误类型:无法连接服务,请检查网络
static int ERROR_SPEECH_TIMEOUT
错误类型:您好像没有说话哦
static int ERROR_TEXT_OVERFLOW
错误类型:文本过长
static int ERROR_TTS_INTERRUPT
错误类型:合成被打断
static int ERROR_UNKNOWN
错误类型:发生未知错误

# 构造器概要

构造器:

构造器和说明
SpeechError(int errorCode)
构造函数 应用层可忽略此函数
SpeechError(java.lang.Throwable e)
构造函数 应用层可忽略此函数

# 方法概要

所有方法

限定符和类型 方法和说明
int getErrorCode()
获取错误码 获取错误对应用的具体错误码,[10000, 20000)的错误码为底层共享库和 服务器返回的错误码,[20000, +∞)为 jar 层返回的错误。
java.lang.String getErrorDesc()
获取错误描述 不包含错误码的描述信息。
java.lang.String getErrorDescription(boolean containCode)
获取错误描述 获取指定是否包含错误码的描述信息。
int getErrorType()
获取错误类型 获取当前错误对应的由本类定义的错误类型
java.lang.String toString()
转为字符串 把当前的信息转为字符串类,与getErrorDescription(boolean) 参数为true时的效果一致。
从类继承的方法 java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace
从类继承的方法 java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait

# 字段详细资料

# ERROR_NO_NETWORK

public static final int ERROR_NO_NETWORK

错误类型:没有检查到网络

另请参阅:
常量字段值

# ERROR_NETWORK_TIMEOUT

public static final int ERROR_NETWORK_TIMEOUT

错误类型:网络连接超时

另请参阅:
常量字段值

# ERROR_NET_EXPECTION

public static final int ERROR_NET_EXPECTION

错误类型:网络连接发生异常

另请参阅:
常量字段值

# ERROR_INSUFFICIENT_PERMISSIONS

public static final int ERROR_INSUFFICIENT_PERMISSIONS

错误类型:未设置有效权限

另请参阅:
常量字段值

# ERROR_INVALID_RESULT

public static final int ERROR_INVALID_RESULT

错误类型:无法解析的结果

另请参阅:
常量字段值

# ERROR_SERVER_CONNECT

public static final int ERROR_SERVER_CONNECT

错误类型:无法连接服务,请检查网络

另请参阅:
常量字段值

# ERROR_INVALID_PARAM

public static final int ERROR_INVALID_PARAM

错误类型:无效的参数

另请参阅:
常量字段值

# ERROR_UNKNOWN

public static final int ERROR_UNKNOWN

错误类型:发生未知错误

另请参阅:
常量字段值

# ERROR_AUDIO_RECORD

public static final int ERROR_AUDIO_RECORD

错误类型: 启动录音失败

另请参阅:
常量字段值

# ERROR_NO_MATCH

public static final int ERROR_NO_MATCH

错误类型:没有匹配的结果

另请参阅:
常量字段值

# ERROR_SPEECH_TIMEOUT

public static final int ERROR_SPEECH_TIMEOUT

错误类型:您好像没有说话哦

另请参阅:
常量字段值

# ERROR_INVALID_ENCODING

public static final int ERROR_INVALID_ENCODING

错误类型:无法支持的编码格式

另请参阅:
常量字段值

# ERROR_EMPTY_UTTERANCE

public static final int ERROR_EMPTY_UTTERANCE

错误类型:无有效的文本信息

另请参阅:
常量字段值

# ERROR_FILE_ACCESS

public static final int ERROR_FILE_ACCESS

错误类型:无法读写文件

另请参阅:
常量字段值

# ERROR_PLAY_MEDIA

public static final int ERROR_PLAY_MEDIA

错误类型:播放音频错误

另请参阅:
常量字段值

# ERROR_MEMORY_WRANING

public static final int ERROR_MEMORY_WRANING

错误类型:内存不足

另请参阅:
常量字段值

# ERROR_TEXT_OVERFLOW

public static final int ERROR_TEXT_OVERFLOW

错误类型:文本过长

另请参阅:
常量字段值

# ERROR_LOGIN

public static final int ERROR_LOGIN

错误类型:用户校验失败

另请参阅:
常量字段值

# ERROR_IN_USE

public static final int ERROR_IN_USE

错误类型:网络繁忙,请稍候

另请参阅:
常量字段值

# ERROR_INVALID_DATA

public static final int ERROR_INVALID_DATA

错误类型:上传数据格式不正确

另请参阅:
常量字段值

# ERROR_INVALID_GRAMMAR

public static final int ERROR_INVALID_GRAMMAR

错误类型:未找到有效的语法文件

另请参阅:
常量字段值

# ERROR_INVALID_LOCAL_RESOURCE

public static final int ERROR_INVALID_LOCAL_RESOURCE

错误类型:无法找到本地资源

另请参阅:
常量字段值

# ERROR_LOGIN_INVALID_USER

public static final int ERROR_LOGIN_INVALID_USER

错误类型:无效的用户名

另请参阅:
常量字段值

# ERROR_LOGIN_INVALID_PWD

public static final int ERROR_LOGIN_INVALID_PWD

错误类型:密码错误

另请参阅:
常量字段值

# ERROR_PERMISSION_DENIED

public static final int ERROR_PERMISSION_DENIED

错误类型:未经授权的语音应用

另请参阅:
常量字段值

# ERROR_BROWSER_NOT_INSTALLED

public static final int ERROR_BROWSER_NOT_INSTALLED

错误类型:系统未安装浏览器,请安装后再查看

另请参阅:
常量字段值

# ERROR_TTS_INTERRUPT

public static final int ERROR_TTS_INTERRUPT

错误类型:合成被打断

另请参阅:
常量字段值

# ERROR_INTERRUPT

public static final int ERROR_INTERRUPT

错误类型:打断(唤醒)

另请参阅:
常量字段值

# ERROR_ENGINE

public static final int ERROR_ENGINE

错误类型:引擎错误

另请参阅:
常量字段值

# 构造器详细资料

# SpeechError

public SpeechError(java.lang.Throwable e)

构造函数
应用层可忽略此函数

参数:
e - 异常对象

# SpeechError

public SpeechError(int errorCode)

构造函数
应用层可忽略此函数

参数:
errorCode - 错误码

另请参阅:
ErrorCode

# 方法详细资料

# getErrorType

public int getErrorType()

获取错误类型
获取当前错误对应的由本类定义的错误类型

返回:
错误类型码,具体值参考本类定义的常量

另请参阅:
getErrorCode(), getErrorDesc()

# getErrorCode

public int getErrorCode()

获取错误码
获取错误对应用的具体错误码,[10000, 20000)的错误码为底层共享库和 服务器返回的错误码,[20000, +∞)为 jar 层返回的错误。具体错误码值,请 参考ErrorCode。

返回:
错误码值

另请参阅: getErrorDesc(), getErrorType(), ErrorCode

# getErrorDesc

public java.lang.String getErrorDesc()

获取错误描述
不包含错误码的描述信息。描述信息有助于开发者和用户处理引起错误的 原因。

返回:
错误描述信息

另请参阅:
getErrorCode(), getErrorType(), getErrorDescription(boolean)

# toString

public java.lang.String toString()

转为字符串
把当前的信息转为字符串类,与getErrorDescription(boolean) 参数为true时的效果一致。

覆盖:
toString 在类中 java.lang.Throwable

返回:
错误描述字符串值

另请参阅:
getErrorCode(), getErrorDescription(boolean)

# getErrorDescription

public java.lang.String getErrorDescription(boolean containCode)

获取错误描述
获取指定是否包含错误码的描述信息。描述信息有助于开发者和用户处理引起错误的 原因。

参数:
containCode - 是否包含错误码

返回:
错误描述信息

另请参阅:
getErrorCode(), getErrorType(), getErrorDesc()

在线
咨询
建议
反馈
体验
中心