1.在.pro文件中添加外部头文件路径和库文件路径
qmake语法为:
外部头文件路径:
INCLUDEPATH +=下载的irrKlang的include文件夹路径
LIBS += -LirrKlang的lib文件夹路径 -lirrKlang
注:-L和-l与路径和文件名之间不能有空格
2.进行debug(根据irrKlang的版本选择64bit或者32bit的debug)
点击运行进行构建,此时会报错,说缺少dll文件,先不要着急。
3.在debug后的build文件夹下将dll文件复制进去
打开已下载的irrKlang文件夹的bin文件夹,根据自己的编译器来选择子文件夹,将其中的三个dll文件复制下来
我的示例工程是demo2,找到对应的build文件夹
打开debug文件夹,将原bin中的三个dll文件复制进去
配置完成,再运行后就不会报缺少dll的错误了。
4.应用示例
在ui中随便写一个播放与暂停界面
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
private:
Ui::Widget *ui;
private slots:
void onplayBtnClicked(); //槽函数的声明
void onstopBtnClicked();
};
#endif // WIDGET_H
#include "widget.h"
#include "ui_widget.h"
#include <irrKlang.h> //导入头文件
irrklang::ISoundEngine* engine =irrklang::createIrrKlangDevice();//建立音频引擎
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
connect(ui->playBtn,&QPushButton::clicked,[=]{
onplayBtnClicked();
});
connect(ui->stopBtn,&QPushButton::clicked,[=]{
onstopBtnClicked();
});
}
Widget::~Widget()
{
delete ui;
}
void Widget::onplayBtnClicked()
{
engine->play2D("1b.mp3",true); //为playBtn按钮定义槽函数,点击播放音频
}
void Widget::onstopBtnClicked()
{
engine->stopAllSounds();//为stopBtn按钮定义槽函数,停止播放
}
最后一步,将音乐文件放在build文件夹下,大功告成
现在点击playBtn就会播放音乐,点击stopBtn就可以停止播放