【Qt】Qt音频处理入门:使用QSound类播放WAV音频

Qt音频

多媒体:播放声音、播放视频

需要模块: multimedia 模块

在Qt中,音频主要是通过 QSound类来实现。但是需要注意的是QSound类只支持播放wav格式音频文件。也就是说如果想添加音频效果,那么首先需要将非wav格式的音频文件转换为wav格式。

cpp 复制代码
// widget.h
 #ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QSound>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

private slots:
    void on_pushButton_clicked();

private:
    Ui::Widget *ui;

    QSound* sound;
};
#endif // WIDGET_H
cpp 复制代码
// widget.cpp
#include "widget.h"
#include "ui_widget.h"


Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    sound = new QSound(":/clicked.wav"); 
}

Widget::~Widget()
{
    delete ui;
    delete sound;
}


void Widget::on_pushButton_clicked()
{
    // 这里进行音频播放操作
    sound->play();
}
相关推荐
RTC实战笔记3 天前
实时互动数字人怎么做,才不是一个只会说话的视频?
音视频·数字人·rtc·数字人接入
用户805533698035 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner5 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
Quz10 天前
QML Hello World 入门示例
qt
xcyxiner13 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner13 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner14 天前
DicomViewer (添加模型类)3
qt
xcyxiner14 天前
DicomViewer (目录调整) 2
qt
xcyxiner14 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
RTC实战笔记15 天前
Android 实时音视频接入教程:媒体补充增强信息(SEI)
音视频·媒体·rtc