本文主要是介绍【Qt编程】基于Qt的词典开发系列十三音频播放,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在上一篇文章中,我是在Qt4平台上调用本地发音的,后来由于用到JSON解析,就将平台转到了Qt5,因为Qt5自带解析JSON的类。然后发现上一篇文章的方法无法运行,当然网上可以找到解决方法,我在这里直接调用Qt自带的类进行网络音频播放和本地播放。比较适用于单词的网上发音和无网情况下的本地发音,而不用将音频文件下载下来,占用太多内存。为了简便起见,工程里只有一个main.cpp文件,不要忘了在.pro文件中加入下面两行:
QT += multimedia
CONFIG += qaxcontainer
下面给出main.cpp文件:
#include "widget.h"
#include <QApplication>
#include<QtMultimedia/QMediaPlayer>
#include<QUrl>
#include<ActiveQt/QAxObject>
int main(int argc, char *argv[])
{QApplication a(argc, argv);QMediaPlayer *player = new QMediaPlayer();player->setMedia(QUrl("http://media.shanbay.com/audio/us/hello.mp3"));player->play();QAxObject *speech= new QAxObject();speech->setControl("SAPI.SpVoice");speech->dynamicCall("Speak(QString,uint)","good",1);//这里换成中文也可以return a.exec();
}
运行后,你会发现本地发音肯定没网络发音好,本地发音是电脑发音,这也是缺点之一。
基于Qt的词典开发系列
- 词典框架设计及成品展示
- 本地词典的设计
- 开始菜单的设计
- 无边框窗口的缩放与拖动
- 无边框窗口的拖动
- 界面美化设计
- 调用网络API
- 用户登录及API调用的实现
- JSON数据解析
- 国际音标的显示
- 系统托盘的显示
- 调用讲述人
- 音频播放
- 自动补全功能
- HTML特殊字符及正则表达式
- 后序
作品下载地址(绿色版):http://download.csdn.net/detail/tengweitw/8830495
源码下载地址:http://download.csdn.net/detail/tengweitw/8830503
原文:http://blog.csdn.net/tengweitw/article/details/38555787
作者:nineheadedbird
这篇关于【Qt编程】基于Qt的词典开发系列十三音频播放的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!