• 大小: 3.29MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-11-17
  • 语言: Java
  • 标签: ifly  

资源简介

科大讯飞语音转为文字java开发,语音转写(Long Form ASR)基于深度全序列卷积神经网络,将长段音频(5小时以内)数据转换成文本数据,为信息处理和数据挖掘提供基础 开放平台“语音转写”需要使用SDK接入,针对有编程基础的开发者用户。如果您不想通过编程方式,可以去讯飞听见官网,上传音频,直接实现语音转文字功能

资源截图

代码片段和文件信息

package com.iflytek.msp.lfasr;

import java.util.HashMap;

import org.apache.log4j.PropertyConfigurator;

import com.alibaba.fastjson.JSON;
import com.iflytek.msp.cpdb.lfasr.client.LfasrClientImp;
import com.iflytek.msp.cpdb.lfasr.exception.LfasrException;
import com.iflytek.msp.cpdb.lfasr.model.LfasrType;
import com.iflytek.msp.cpdb.lfasr.model.Message;
import com.iflytek.msp.cpdb.lfasr.model.ProgressStatus;

public class TestLfasr 
{
// 原始音频存放地址
private static final String local_file = “/Users/rockinliu/IdeaProjects/voiceToWrite/source/8.mp3“;
/*
 * 转写类型选择:标准版和电话版分别为:
 * LfasrType.LFASR_STANDARD_RECORDED_AUDIO 和 LfasrType.LFASR_TELEPHONY_RECORDED_AUDIO
 * */
private static final LfasrType type = LfasrType.LFASR_STANDARD_RECORDED_AUDIO;
// 等待时长(秒)
private static int sleepSecond = 20;

public static void main(String[] args) {
// 加载配置文件
PropertyConfigurator.configure(“/Users/rockinliu/IdeaProjects/voiceToWrite/source/log4j.properties“);

// 初始化LFASR实例
LfasrClientImp lc = null;
try {
lc = LfasrClientImp.initLfasrClient();
} catch (LfasrException e) {
// 初始化异常,解析异常描述信息
Message initMsg = JSON.parseobject(e.getMessage() Message.class);
System.out.println(“ecode=“ + initMsg.getErr_no());
System.out.println(“failed=“ + initMsg.getFailed());
}

// 获取上传任务ID
String task_id = ““;
HashMap params = new HashMap<>();
params.put(“has_participle“ “true“);
try {
// 上传音频文件
Message uploadMsg = lc.lfasrUpload(local_file type params);

// 判断返回值
int ok = uploadMsg.getOk();
if (ok == 0) {
// 创建任务成功
task_id = uploadMsg.getData();
System.out.println(“task_id=“ + task_id);
} else {
// 创建任务失败-服务端异常
System.out.println(“ecode=“ + uploadMsg.getErr_no());
System.out.println(“failed=“ + uploadMsg.getFailed());
}
} catch (LfasrException e) {
// 上传异常,解析异常描述信息
Message uploadMsg = JSON.parseobject(e.getMessage() Message.class);
System.out.println(“ecode=“ + uploadMsg.getErr_no());
System.out.println(“failed=“ + uploadMsg.getFailed());
}

// 循环等待音频处理结果
while (true) {
try {
// 睡眠1min。另外一个方案是让用户尝试多次获取,第一次假设等1分钟,获取成功后break;失败的话增加到2分钟再获取,获取成功后break;再失败的话加到4分钟;8分钟;……
Thread.sleep(sleepSecond * 1000);
System.out.println(“waiting ...“);
} catch (InterruptedException e) {
}
try {
// 获取处理进度
Message progressMsg = lc.lfasrGetProgress(task_id);

// 如果返回状态不等于0,则任务失败
if (progressMsg.getOk() != 0) {
System.out.println(“task was fail. task_id:“ + task_id);
System.out.println(“ecode=“ + progressMsg.getErr_no());
System.out.println(“failed=“ + progressMsg.getFailed());

// 服务端处理异常-服务端内部有重试机制(不排查极端无法恢复的任务)
// 客户端可根据实际情况选择:
// 1. 客户端循环重试获取进度
// 2. 退出程序,反馈问题
continue;
} else {
ProgressStatus progressStatus = JSON.parseobject(progressMsg.getData() ProgressStatus.clas

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-04-01 13:51  voiceToWrite\
     文件       12292  2018-04-01 10:47  voiceToWrite\.DS_Store
     目录           0  2018-06-14 10:12  __MACOSX\
     目录           0  2018-06-14 10:12  __MACOSX\voiceToWrite\
     文件         120  2018-04-01 10:47  __MACOSX\voiceToWrite\._.DS_Store
     目录           0  2018-03-30 19:07  voiceToWrite\bin\
     文件        8196  2018-03-30 19:07  voiceToWrite\bin\.DS_Store
     目录           0  2018-06-14 10:12  __MACOSX\voiceToWrite\bin\
     文件         120  2018-03-30 19:07  __MACOSX\voiceToWrite\bin\._.DS_Store
     文件         354  2017-06-20 16:24  voiceToWrite\bin\config.properties
     文件         223  2017-06-20 16:24  __MACOSX\voiceToWrite\bin\._config.properties
     目录           0  2017-06-28 17:17  voiceToWrite\bin\com\
     目录           0  2017-06-28 17:17  voiceToWrite\bin\com\iflytek\
     目录           0  2017-06-28 17:17  voiceToWrite\bin\com\iflytek\msp\
     目录           0  2017-06-28 17:17  voiceToWrite\bin\com\iflytek\msp\lfasr\
     文件        4153  2017-06-28 17:17  voiceToWrite\bin\com\iflytek\msp\lfasr\TestLfasr.class
     目录           0  2018-06-14 10:12  __MACOSX\voiceToWrite\bin\com\
     目录           0  2018-06-14 10:12  __MACOSX\voiceToWrite\bin\com\iflytek\
     目录           0  2018-06-14 10:12  __MACOSX\voiceToWrite\bin\com\iflytek\msp\
     目录           0  2018-06-14 10:12  __MACOSX\voiceToWrite\bin\com\iflytek\msp\lfasr\
     文件         223  2017-06-28 17:17  __MACOSX\voiceToWrite\bin\com\iflytek\msp\lfasr\._TestLfasr.class
     文件         223  2017-06-28 17:17  __MACOSX\voiceToWrite\bin\com\iflytek\msp\._lfasr
     文件         223  2017-06-28 17:17  __MACOSX\voiceToWrite\bin\com\iflytek\._msp
     文件         223  2017-06-28 17:17  __MACOSX\voiceToWrite\bin\com\._iflytek
     文件         223  2017-06-28 17:17  __MACOSX\voiceToWrite\bin\._com
     文件         683  2017-05-23 20:35  voiceToWrite\bin\log4j.properties
     文件         223  2017-05-23 20:35  __MACOSX\voiceToWrite\bin\._log4j.properties
     文件         223  2018-03-30 19:07  __MACOSX\voiceToWrite\._bin
     目录           0  2018-03-30 19:15  voiceToWrite\out\
     目录           0  2018-03-30 19:15  voiceToWrite\out\production\
     目录           0  2018-04-01 13:49  voiceToWrite\out\production\voiceToWrite\
............此处省略51个文件信息

评论

共有 条评论

相关资源