QT集成讯飞语音合成和语音识别

在讯飞AndroidSDK基础上进行了针对QT的封装:
使用方法:
1.下载libmsc.so文件 开发工具包里边复制;
在这里插入图片描述
2.复制jar文件到libs文件夹;
在这里插入图片描述
3.定义JHXunfei

private static JHXunfei  xunfei=null;

4.定义回掉XFCallBack

XFCode {
	Rec_Begin,
	Rec_End,
	Rec_Result,
	Rec_Volume,
	Rec_Error,
	Say_Begin,
	Say_End
}

  XFCallBack callback = new XFCallBack() {
            @Override
            public void callBack(XFCode flag,String data) {
                Log.e("REC:",data);

                switch(flag){
                    case Rec_Begin:callQt.notifyQtIS(303,"");break;// 开始识别
                    case Rec_End:callQt.notifyQtIS(304,"");break;//识别停止
                    case Rec_Result:callQt.notifyQtIS(305,data);break;//识别内容
                    case Rec_Volume:callQt.notifyQtIS(306,data);break;//音量
                    case Rec_Error:callQt.notifyQtIS(306,data);break;//捕获错误
                }

            }
    	};

5.初始化

xunfei=new JHXunfei(this);
xunfei.initXunfei(APPID);
xunfei.setCallBack(callback);
xunfei.initXunfeiSay(xfID);//需要语音合成时定义

6.接口方法

public JHXunfei(Activity act);
 
 public void setCallBack(XFCallBack fun );
 
 public void initXunfei(String appid);
 
 public void startRec();
 
 public void initXunfeiSay(String appid);
 
 public void say(String txt)
 
 public void say(String txt,int flag);// flag==0?"xiaoyan":"aisjinger"
 
 public void sayToFile(String txt,String path,int flag);  //flag==0?"xiaoyan":"aisjinger"

public void sayToFile(String txt,String path) ;

7.说明

调用sayToFile 保存语音到文件;
调用say 读出语音即TTS;
调用startRec 开始识别 识别成功会回掉;

回掉中根据	
    Rec_Begin,
	Rec_End,
	Rec_Result,
	Rec_Volume,
	Rec_Error,
	Say_Begin,
	Say_End
进行相应处理!

8.文件下载:

jar:https://download.csdn.net/download/feeling_c/10927397

Qt技术是一套强大的跨平台应用程序开发框架,专注于使用C++语言来构建高性能、高可维护性的软件解决方案。自1991年首次推出以来,Qt因其卓越的跨平台能力、丰富的功能集、高效的开发工具良好的社区支持而广受开发者欢迎。以下是对Qt技术的详细介绍: 核心特性 跨平台性: Qt设计的核心理念是“一次编写,到处运行”。它支持多种操作系统,包括但不限于Windows、macOS、Linux、AndroidiOS。通过Qt,开发者可以使用同一套源代码,在不同平台上编译并生成原生外观与体验的应用程序,极大地提高了开发效率产品一致性。 图形用户界面(GUI)开发: 提供了一个完整的GUI工具箱,包含各种控件(如按钮、文本框、滑块、列表视图等)、布局管理器、样式表支持、动画效果等,帮助开发者快速构建美观、功能丰富的桌面移动应用界面。Qt Designer是一个可视化界面设计工具,允许通过拖放操作构建UI,所见即所得。 非GUI应用开发: 除了GUI程序,Qt同样适用于开发命令行工具、后台服务、嵌入式系统等非图形化应用。其底层API涵盖了文件处理、线程、网络通信、数据库访问等广泛的功能。 面向对象设计: Qt采用面向对象的设计原则,提供了高度模块化的类库,使得代码组织清晰、易于扩展重用。它遵循MVC(模型-视图-控制器)模式,支持数据驱动的界面设计。 元对象系统与信号槽机制: Qt Meta-Object System(元对象系统)是Qt框架的一个重要特性,它引入了元对象编译器(moc),用于在编译时生成额外的代码以支持对象间通信、反射、动态属性绑定等高级功能。 Signal & Slot机制是Qt中实现对象间事件驱动通信的核心方式。信号代表对象状态变化或事件发生,槽则是响应这些信号的可调用实体。这种松耦合的通信方式简化了异步编程事件处理。 QML与Qt Quick: QML是一种声明性语言,结合JavaScript,用于快速创建流畅、动态的用户界面。它与Qt Quick框架紧密集成,特别适合开发现代化、触屏友好的应用。 Qt Quick ControlsQt Quick Dialogs提供了一系列预定义的QML组件,用于构建具有传统桌面风格或现代移动风格的界面元素。同时,Qt Quick也支持自定义控件开发。 多媒体支持: Qt Multimedia模块提供对音频、视频播放、录音、摄像头访问等功能的支持,使得开发多媒体应用程序变得简便。 网络功能: Qt Network模块封装了网络通信相关的API,包括HTTP、FTP、TCP/UDP套接字、SSL加密、DNS查询等,便于开发网络应用服务。 国际化与本地化: Qt Linguist工具支持应用程序的多语言翻译本地化工作,确保软件能适应全球市场。 开发工具与生态系统: Qt Creator是一款集成开发环境(IDE),集成了项目管理、代码编辑、调试、版本控制、QML预览等多种功能,为Qt开发提供了无缝的工作流程。 Qt拥有活跃的开发者社区、丰富的文档资源、示例代码库以及商业支持选项,为开发者的学习、问题解决项目实施提供了坚实后盾。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值