<十三>音频播放

最后更新于:2022-04-01 07:11:36

# 【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(); } ~~~ 运行后,你会发现本地发音肯定没网络发音好,本地发音是电脑发音,这也是缺点之一。
';