科大讯飞
  1. 语音听写
科大讯飞
  • iOS SDK接入文档
  • 平台文档
    • 开发者新手指南
      • 平台简介
      • 快速指引
    • 服务协议
      • 讯飞开放平台用户服务协议
      • 讯飞星火认知大模型接口服务协议
      • 开发者应用创建规则
      • 讯飞开放平台隐私政策
      • 开发者用户个人信息保护合规指引
      • 开放平台SDK合规使用说明
      • SDK隐私政策总览
      • SDK合规使用说明总览
      • 科大讯飞儿童隐私保护政策
      • 讯飞开放平台SLA协议
      • 讯飞开放平台订购协议
    • 用户认证须知
      • 用户认证简介
      • 企业实名认证
      • 个人实名认证
      • 初创团队认证
      • 学生认证
      • 公益项目认证
      • 个人升级企业认证
    • 财务
      • 退款规则及退款流程
      • 财务相关说明
    • 账号
      • 账号注销与删除流程
      • 账号与应用说明
    • 会员
      • 会员权益详情
      • 会员时效说明
      • 会员试用版
  • 星火认知大模型
    • SparkDesk
      • SparkDesk使用指南
      • SparkDesk隐私政策
      • SparkDesk用户协议
    • 星火认知大模型
      • 服务说明
      • 通用鉴权URL生成说明
      • Spark Android SDK接入文档
      • Linux SDK接入文档
      • Windows SDK接入文档
      • 讯飞星火认知大模型隐私政策
      • Web 文档
        • 星火认知大模型Web API文档
        • 星火大模型V1.5
        • 星火大模型V2
        • 星火大模型V3
    • 星火知识库
      • 星火知识库 API 文档
        • 星火知识库 API 文档
        • 文档问答
        • 文档上传
        • 文档总结
        • 获取文档总结/概要信息
      • 新版Embedding API文档
    • 图片生成
      • 图片生成 API
    • 图片理解
      • 图片理解 API
    • 大模型定制训练平台
      • 产品使用说明
      • 星火微调服务Web API文档文档
        • 星火微调服务Web API文档文档
        • V1.5版本
        • 微调模型
  • 语音识别
    • 语音唤醒(新版)
    • 语音听写
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • Java SDK 文档
      • 音频文件格式说明
      • 语音听写服务说明
      • 语音听写(流式版)SDK隐私政策
      • 语音听写(流式版)SDK合规使用说明
      • HarmonyOS SDK 文档
      • 语音听写自训练平台
      • 语音听写(流式版)WebAPI
    • 语音转写
      • 语音转写服务说明
      • 语音转写 服务协议
      • WebAPI 文档
        • 语音转写 API 文档
        • 文件上传
        • 查询结果
    • 极速语音转写
      • 极速语音转写 API 文档
      • 小文件上传
      • 初始化分块信息
      • 分块上传
      • 分块上传完成
      • 创建任务
      • 查询任务
    • 实时语音转写
      • 实时语音转写服务说明
      • 实时语音转写 API
    • 离线语音听写
      • Android SDK 文档
      • 离线语音听写服务说明
      • 离线语音听写SDK隐私政策
      • 离线语音听写SDK合规使用说明
    • 离线语音听写(新版)
      • Android SDK 文档
      • 离线语音听写隐私政策
    • 语音唤醒
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 语音唤醒服务说明
      • 离线唤醒SDK隐私政策
    • 语音唤醒(新版)
      • Android SDK 文档
      • Linux SDK 文档
      • 语音唤醒隐私政策
    • 离线命令词识别
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 离线命令词识别服务说明
      • 离线命令词识别SDK隐私政策
      • 离线命令词SDK合规使用说明
  • 语音合成
    • 在线语音合成
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • Java SDK 文档
      • 服务协议
      • 在线语音合成服务说明
      • 发音人自训练平台使用指南
      • WebAPI
    • 长文本语音合成
      • 长文本语音合成 API 文档
      • 创建任务
      • 查询任务
    • 离线语音合成
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 服务协议
      • 离线语音合成服务说明
    • AI虚拟人技术
      • Web SDK 2.0 接入指南
      • Android-SDK
      • iOS-SDK
      • Web API 文档
        • AI虚拟人技术 API 文档
        • 音频驱动
        • 启动
        • 文本驱动
        • 停止
        • 心跳
  • 语音扩展
    • 语音评测(流式版)
      • 接口说明
      • Android SDK 文档
      • iOS SDK 文档
      • Linux SDK 文档
      • Windows SDK 文档
      • 语音评测SDK隐私政策
      • 语音评测(流式版)API
    • 语音评测suntone
      • 语音评测suntone API
    • 离线变声
      • Android SDK 集成文档
    • 音色转换
      • 音色转换 API
    • 性别年龄识别
      • 性别能力识别 API
    • 声纹识别
      • Web API 文档
      • 声纹识别 API
    • 歌曲识别
      • 歌曲识别 API
    • 歌曲识别 ACRCloud
      • 接口说明
      • 哼唱识别
      • 音乐识别
    • AI 客服中间件
      • 接口说明
      • 获取token
      • 查询配置
      • 直接外呼
      • 创建外呼任务
      • 提交任务数据
      • 启动外呼任务
      • 暂停外呼任务
      • 删除外呼任务
      • 查询任务
      • 结果数据推送
      • 话单推送
      • 录音推送
      • 会话推送
      • 呼入话术上下文动态数据获取
  • 自然语言处理
    • 文本纠错
      • 文本纠错 API
      • 黑白名单上传
    • 公文校队
      • 公文校对 API
    • 文本合规
      • 文本合规 API
      • 新增黑名单词库
      • 根据lib_id添加黑名单词条
      • 根据lib_id查询词条明细
      • 根据lib_id删除词条
      • 根据appid查询账户下所有词库
      • 根据lib_id删除词库
      • 创建白名单库
      • 根据lib_id添加放行词条
      • 根据lib_id查询词条详情
      • 根据lib_id删除词条信息
      • 根据appid查询所有词库列表
      • 根据lib_id删除词库
    • 图片合规
      • 图片合规 API
    • 音频合规
      • 音频合规 API
    • 视频合规
      • 视频合规 API
    • 文本改写
      • 文本改写 API
    • 机器翻译
      • 机器翻译(新) API
    • 机器翻译niutrans
      • 机器翻译niutrans API
    • 同声传译
      • 同声传译 API 
    • 离线分词
      • Android SDK 文档
  • 人脸识别
    • 人脸验证与检索
      • Android SDK 文档
      • iOS SDK 文档
      • 人脸验证与检索SDK隐私政策
      • 人脸验证与检索SDK合规使用说明
    • 人脸对比
      • 人脸比对 API
    • 人脸比对sensetime
      • 人脸比对sensetime API
    • 人脸水印照比对
      • 人脸水印照比对 API
    • 静默活体检测
      • 静默活体检测 API
    • 配合式活体检测
      • 配合式活体检测 API
    • 静默活体检测sensetime
      • 静默活体检测sensetime API
    • 人脸检测和属性分析
      • 人脸检测和属性分析 API
    • 人脸特征分析tuputech
      • 年龄 API
      • 颜值 API
      • 性别 API
      • 表情 API
  • 文字识别
    • 通用文字识别
      • 通用文字识别 API
    • 通用文字识别
      • 通用文字识别 intsig API
    • 手写文字识别
      • 手写文字识别 API
    • 印刷文字识别
      • 印刷文字识别 API
    • 印刷文字识别(多语种)
      • 印刷文字识别(多语种)
    • 印刷文字识别(多语种)intsig
      • 印刷文字识别(多语种)intsig API
    • 图片文档还原
      • 图片文档还原 API 
    • 国内通用票据识别
      • 接口说明
      • 国内通用票据识别 API
    • 离线OCR
      • Android SDK 文档
    • 名片识别 intsig
      • 名片识别 API
    • 身份证识别 intsig
      • 身份证识别 intsig API
    • 银行卡识别 intsig
      • 银行卡识别 API
    • 营业执照识别 intsig
      • 营业执照识别 intsig API
    • 增值税发票识别 intsig
      • 增值税发票识别 intsig API
    • 拍照速算识别
      • 接口说明
      • 拍照速算识别 API
    • 公式识别
      • 接口说明
      • 公式识别 API
    • 指尖文字识别
      • 接口说明
      • 指尖文字识别 API
    • 身份证识别
      • 接口说明
      • 身份证识别 API
    • 增值税发票识别
      • 接口说明
      • 增值税发票识别 API
    • 营业执照识别
      • 接口说明
      • 营业执照识别 API
    • 火车票识别
      • 接口说明
      • 火车票识别 API
    • 出租车发票识别
      • 接口说明
      • 出租车发票识别 API
  • 图像识别
    • 场景识别
      • 场景识别 API
    • 物体识别
      • 物体识别 API
    • 场所识别
      • 场所识别 API 文档
  • 基础服务
    • 云服务器 CVM
      • 云服务器 CVM 产品简介
      • 快速入门
      • 服务协议
  • 解决方案
    • 签到解决方案
      • SaaS操作文档
    • 智能硬件通用方案
      • 智能硬件通用方案说明
      • 麦克风阵列Android SDK
      • 麦克风阵列Linux SDK
      • 双麦阵列设计参考
      • 麦克风阵列录音要求
      • 语音唤醒Android SDK
      • 语音唤醒Linux SDK
      • 离线声纹Android SDK
      • 离线声纹Linux SDK
  • MSC API 文档
    • Android
      • 文件列表
      • SDK初始化
      • 语音识别(Recognizer)
      • 语音合成(Synthesizer)
      • 语音评测(Evaluator)
      • 语音唤醒(Wakeuper)
      • 声纹人脸(Verifier)
      • Android 常量字段值
      • 基础类
    • IOS
      • 文件列表
      • SDK初始化
      • 语音识别(Recognizer)
      • 语音合成(Synthesizer)
      • 语音评测(Evaluator)
      • 语音唤醒(Wakeuper)
      • 声纹人脸(Verifier)
      • 基础类
    • Windows&Linux
      • 文件列表
      • API 文档
    • Java
      • 所有类列表
      • SDK初始化
      • 语音识别(Recognizer)
      • 语音合成(Synthesizer)
      • 常量字段值
      • 基础类
  1. 语音听写

Java SDK 文档

1、简介#

语音听写,是基于自然语言处理,将自然语言音频转换为文本输出的技术。语音听写技术与语法识别技术的不同在于,语音听写不需要基于某个具体的语法文件,其识别范围是整个语种内的词条。在听写时,应用还可以上传个性化的词表,如联系人列表等,提高列表中词语的匹配率(见后面章节)。
自2019/8/16起,高阶功能-动态修正免费开放!可到这里 动态修正效果 在线体验
使用方法详见 动态修正
语音听写详细的接口介绍及说明请参考: MSC Java API 文档 , 在集成过程中如有疑问,可登录讯飞开放平台论坛 ,查找答案或与其他开发者交流。
小语种:暂不支持小语种!

#2、SDK集成指南#

#2.1 Demo运行步骤#

1.在控制台下载对应sdk(如何下载见下方常见问题)。
2.配置JDK环境 编者采用的版本是jdk1.8,读者可以从 Sun官网 下载所需的版本;
3.安装Eclipse Java IDE 编者采用的版本是Ecilpse Java IDE,读者可以到eclipse官网下载所需的版本;
4.直接打开File-->import Projects--->选择已下载java sdk内的sample/MscDemo。
5.运行Mainview即可,其中IatSpeechView为语音听写能力代码示例。

#2.2 项目集成步骤#

#2.2.1 SDK包说明#

《JAVA SDK目录结构一览》
bin:
相关类文件
lib:
msc相关jar包
msc:
日志存放文件夹
res:
UI图片存放文件夹
src:
IatSpeechView.java(语音听写示例代码)
libmsc32库文件
libmsc64库文件
msc32.dll
msc64.dll

#2.2.2 SDK导入#

1.
在Eclipse中建立你的Java工程。
2.
将开发工具包中lib目录下的Msc.jar复制到新建工程的lib目录中(如下图所示)。
img
1.
在Eclipse中选中工程,通过工具栏Project->Properties->Java Build Path->Libraries->Add JARS或ADD External JARS引入Msc.jar(如下图所示)。
img
1.
将SDK.\lib目录下库文件拷贝到工程根目录(如下图所示)。
img
1.
在你需要使用MSC服务的文件中导入相应的类,如。

#2.2.3 初始化方式#

创建用户语音配置对象后才可以使用语音服务,建议在程序入口处调用。
关于初始化时指定库名,或报加载库失败的解决办法,请参考《MSC Reference Manual》中,关于SpeechUtility类,以及SpeechConstant类的说明。

#2.3 参数与说明#

#2.3.1 使用麦克风录音听写示例#

#2.3.2 使用音频文件听写示例#

#2.3.3 上传用户词表#

上传用户词表可以提高词表内词汇的识别率,也可以提高语义的效果,每个用户终端设备对应一个词表,用户词表的格式及构造方法详见《MSC Reference Manual》 UserWords类。
备注:用户级词表和应用级词表的区别,设置用户级热词只在已安装当前设备终端上生效对该应用下其他设备不生效,在控制台设置个性化热词(应用级)则对该应用下设备服务都生效。目前听写离线环境下暂不支持热词上传。

#2.3.4 动态修正#

未开启动态修正:实时返回识别结果,每次返回的结果都是对之前结果的追加;
开启动态修正:实时返回识别结果,每次返回的结果有可能是对之前结果的的追加,也有可能是要替换之前某次返回的结果(即修正);
开启动态修正,相较于未开启,返回结果的颗粒度更小,视觉冲击效果更佳;
使用动态修正功能需到控制台-流式听写-高级功能处点击开通,并设置相应参数方可使用,参数设置方法:this.mParamMap.put( SpeechConstant.DWA, DefaultValue.DWA );
动态修正功能仅 中文 支持;
未开启与开启返回的结果格式不同,若开通了动态修正功能并设置了dwa=wpgs(仅中文支持),会有如下字段返回:
参数类型描述
pgsstring开启wpgs会有此字段 取值为 "apd"时表示该片结果是追加到前面的最终结果;取值为"rpl" 时表示替换前面的部分结果,替换范围为rg字段
rgarray替换范围,开启wpgs会有此字段 假设值为[2,5],则代表要替换的是第2次到第5次返回的结果

#2.3.5 代理服务器设置方法#

在createUtility接口的params参数中添加:
net_type=custom, proxy_ip=<host>, proxy_port=<port>
其中,<host>,<port>替换为实际的代理服务器地址和端口。
例如:SpeechUtility.createUtility(SpeechConstant.APPID + “=12345678” + “,” + “net_type=custom, proxy_ip=192.168.1.2, proxy_port=8080”); 注意:各参数间,以英文逗号分隔。
接口原型: public static SpeechUtility createUtility(java.lang.String params)
注意: 若在设置代理参数后,使用语音服务过程中,报错10204/10205/10212等网络异常错误时,请查阅以下内容,做出相关操作:
讯飞语音SDK的通信协议使用的是标准HTTP1.1协议,其代理协议使用的是标准HTTP代理协议。
代理服务器需要支持全双工多问多答方式,即 pipeline 模式。
代理服务器不能对80端口做限制,不能对如下域名做拦截: hdns.openspeech.cn scs.openspeech.cn open.xf-yun.com dev.voicecloud.cn
需要确保代理服务器只负责转发数据包,不能改变数据包的完整性和时序性。
代理服务器在转发数据包时,不能在HTTP协议头部添加 IE6 标识头。

#2.3.6 常用参数说明#

参数名称名称说明
domain应用领域应用领域 iat:日常用语 medical:医疗 注:医疗领域若未授权无法使用,可到控制台-语音听写(流式版)-高级功能处添加试用或购买;若未授权无法使用会报错11200。
language语言区域选择要使用的语言区域,目前sdk支持中文:zh_cn,英文:en_us。
accent方言当前仅在LANGUAGE为简体中文时,支持方言选择,其他语言区域时, 请把此参数值设为null。默认值:中文普通话(mandarin),其他方言参数可在控制台方言一栏查看。
vad_bos前端点超时开始录入音频后,音频前面部分最长静音时长 听写默认值5000ms,取值范围[1000ms,10000ms]。
vad_eos后端点超时开始录入音频后,音频后面部分最长静音时长,听写默认值1800ms,取值范围[0,10000ms]。
sample_rate采样率音频的采样率是音频属性的其中一个,一般来说,采样率越高音频的质量越好,识别的匹配率越高,但上传带宽消耗也越大。听写:支持采样率{8KHZ,16KHZ}。
nbest句子多侯选通过设置此参数,获取在发音相似时的句子多侯选结果。设置多候选会影响性能,响应时间延迟200ms左右。取值范围:听写[1,5]。 注:该扩展功能若未授权无法使用,可到控制台-语音听写(流式版)-高级功能处免费开通;若未授权状态下设置该参数并不会报错,但不会生效。
wbest词语多侯选通过设置此参数,获取在发音相似时的词语多侯选结 果。设置多候选会影响性能,响应时间延迟200ms左右。取值范围:听写[1,5]。 注:该扩展功能若未授权无法使用,可到控制台-语音听写(流式版)-高级功能处免费开通;若未授权状态下设置该参数并不会报错,但不会生效。
result_type结果类型结果类型包括:xml, json, plain。xml和json即对应的结构化文本结构,plain即自然语言的文本。
ptt标点(仅中文支持)是否开启标点符号添加1:开启(默认值)0:关闭 ;示例:this.mParamMap.put( SpeechConstant.ASR_PTT, DefaultValue.PTT );
注: 多候选效果是由引擎决定的,并非绝对的。即使设置了多候选,如果引擎并没有识别出候选的词或句,返回结果也还是单个。
备注:以上均为SDK常用参数说明,更多详细参数请参考:MSC Java API 文档 .

#2.3.7 识别结果说明#

JSON字段英文全称类型说明
snsentencenumber第几句
lslast sentenceboolean是否最后一句
bgbeginnumber保留字段,无需关注
edendnumber保留字段,无需关注
wswordsarray词
cwchinese wordarray中文分词
wwordstring单字
scscorenumber分数
听写结果示例:
{
    "sn": 1,
    "ls": true,
    "bg": 0,
    "ed": 0,
    "ws": [
        {
            "bg": 0,
            "cw": [
                {
                    "w": "今天",
                    "sc": 0
                }
            ]
        },
        {
            "bg": 0,
            "cw": [
                {
                    "w": "的",
                    "sc": 0
                }
            ]
        },
        {
            "bg": 0,
            "cw": [
                {
                    "w": "天气",
                    "sc": 0
                }
            ]
        },
        {
            "bg": 0,
            "cw": [
                {
                    "w": "怎么样",
                    "sc": 0
                }
            ]
        },
        {
            "bg": 0,
            "cw": [
                {
                    "w": "。",
                    "sc": 0
                }
            ]
        }
    ]
}
多候选结果示例:
{
    "sn": 1,
    "ls": false,
    "bg": 0,
    "ed": 0,
    "ws": [
        {
            "bg": 0,
            "cw": [
                {
                    "w": "我想听",
                    "sc": 0
                }
            ]
        },
        {
            "bg": 0,
            "cw": [
                {
                    "w": "拉德斯基进行曲",
                    "sc": 0
                },
                {
                    "w": "拉得斯进行曲",
                    "sc": 0
                }
            ]
        }
    ]
}

#3、常见问题#

#集成语音识别功能时,程序启动后没反应#

答:请检查是否忘记使用SpeechUtility初始化。 也可以在听写监听器的onError函数中打印错误信息,根据信息提示,查找错误源。

#SDK是否支持本地语音能力?#

答:Java平台暂时不支持本地能力。

#java SDK是否支持macOS系统?#

答:不支持。

#如何设置语音云服务URL?#

答:在createUtility接口中添加:server_url = http://YourDomainName/msp.do (YourDomainName是指语音云服务域名,请开发者自行替换) 例如:SpeechUtility.createUtility(SpeechConstant.APPID + "=12345678" + "," + "server_url = http://sdk.openspeech.cn/msp.do"); 注意:各参数间,以英文逗号分隔。 接口原型: public static SpeechUtility createUtility(java.lang.String params)

#SDK形式是否支持多路并发?#

答:sdk:客户端解决方案,支持Android、ios、windows、linux、Java平台,不支持并发; webapi:服务端解决方案,不限制平台、不限制语言,支持并发。

#如何设置识别业务所需的额外参数(其它业务类似)?#

答:如要设置参数,各类参数设置参考《MSC Reference Manual》 SpeechConstant类

#获取到语音听写结果为空或错误内容或者内容不全的原因是什么?#

答:原因可能是:
1、音频格式不正确,客户端支持的音频编解码算法只支持16位Intel PCM格式的音频,请使用Cool Edit Pro工具(网页搜索下载即可)查看音频格式,sdk目前支持的格式是 pcm 和 wav 格式、音频采样率要是 16k 或者 8k、采样精度16 位、单声道音频。请使用cool edit软件(网页搜索下载此软件即可)查看音频格式是否满足相应的识别引擎类型
2、引擎的参数设置不正确,如没有设置好正确的引擎类型和采样率等。
3、音频中间有静音或者杂音音频超过了后端点(默认为2000ms)的设置,此时请使用Cool Edit Pro工具查看音频内容,并且设置后端点(vad_eos)为最大值10000ms
包含超过后端点最大值的静音或者杂音音频识别不完整是正常的。

#语音听写支持识别多长时间的音频,支持的音频格式是什么?#

答:语音听写的功能是可以识别60S以内的短音频,将音频转化成文本信息。
听写sdk目前支持的格式是 pcm 和 wav 格式、音频采样率要是 16k 或者 8k、采样精度16 位、单声道音频。请使用cool edit软件(网页搜索下载此软件即可)查看音频格式是否满足相应的识别引擎类型,否则识别为空或者识别为错误文本,格式必须正确,除上述格式均不识别,音频格式一定要满足要求。现语音听写WebAPI接口的中文普通话和英文支持mp3格式,如有需要,请参考语音听写(流式版)WebAPI
具体可以参考:http://bbs.xfyun.cn/forum.php?mod=viewthread&tid=7051
另外我们识别的音频长度最大为 60S,在使用音频是要注意你的本地音频的参数要和代码里的读取音频参数保持一致

#Java听写sdk如何下载?#

答:文档中心---快速指引 有介绍步骤---根据步骤下载Java在线听写sdk

#更多Java问题,请见论坛帖子#

SDK常见问题:Java SDK 常见问题解答
上一页
Windows SDK 文档
下一页
音频文件格式说明
Built with