用Qt實現錄音以及放音

2021-09-19 13:01:02 字數 3475 閱讀 9172

環境:ubuntu10.04,qt creator 2.0.1,qt 4.7.0

參考qt幫助文件,對qaudioinput類以及qaudiooutput類進行操作,實現錄音以及放音.

工作流程:test_record_ver0工程錄音3s,將聲音檔案儲存在/root/qt_code/test.raw中,test_play_ver0工程開啟test.raw檔案,並輸出聲音.

源**:

test_record_ver0工程:

widget.h:

#ifndef widget_h#define widget_h#include #include #include #include using namespace std;namespace ui class widget : public qwidget;#endif // widget_h

widget.cpp:

#include "widget.h"#include "ui_widget.h"widget::widget(qwidget *parent) :    qwidget(parent),    ui(new ui::widget)    audio = new qaudioinput(format, this);    qtimer::singleshot(3000, this, slot(stoprecording()));    audio->start(&outputfile);    // records audio for 3000ms     cout <<"record begin!" << endl;}void widget::stoprecording() widget::~widget()

test_play_ver0工程:

widget.h:

#ifndef widget_h#define widget_h#include #include #include #include #include using namespace std;namespace ui class widget : public qwidget;#endif // widget_h

wideget.cpp:

#include "widget.h"#include "ui_widget.h"widget::widget(qwidget *parent) :    qwidget(parent),    ui(new ui::widget)    audio = new qaudiooutput(format, this);    connect(audio,signal(statechanged(qaudio::state)),slot(finishedplaying(qaudio::state)));    audio->start(&inputfile);    cout <<"play begin!" << endl;}void widget::finishedplaying(qaudio::state state)    cout << "play end!" << endl; }widget::~widget()

環境:ubuntu10.04,qt creator 2.0.1,qt 4.7.0

參考qt幫助文件,對qaudioinput類以及qaudiooutput類進行操作,實現錄音以及放音.

工作流程:test_record_ver0工程錄音3s,將聲音檔案儲存在/root/qt_code/test.raw中,test_play_ver0工程開啟test.raw檔案,並輸出聲音.

源**:

test_record_ver0工程:

widget.h:

#ifndef widget_h#define widget_h#include #include #include #include using namespace std;namespace ui class widget : public qwidget;#endif // widget_h

widget.cpp:

#include "widget.h"#include "ui_widget.h"widget::widget(qwidget *parent) :    qwidget(parent),    ui(new ui::widget)    audio = new qaudioinput(format, this);    qtimer::singleshot(3000, this, slot(stoprecording()));    audio->start(&outputfile);    // records audio for 3000ms     cout <<"record begin!" << endl;}void widget::stoprecording() widget::~widget()

test_play_ver0工程:

widget.h:

#ifndef widget_h#define widget_h#include #include #include #include #include using namespace std;namespace ui class widget : public qwidget;#endif // widget_h

wideget.cpp:

#include "widget.h"#include "ui_widget.h"widget::widget(qwidget *parent) :    qwidget(parent),    ui(new ui::widget)    audio = new qaudiooutput(format, this);    connect(audio,signal(statechanged(qaudio::state)),slot(finishedplaying(qaudio::state)));    audio->start(&inputfile);    cout <<"play begin!" << endl;}void widget::finishedplaying(qaudio::state state)    cout << "play end!" << endl; }widget::~widget()

用Qt實現錄音以及放音

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!環境 ubuntu10.04,qt creator 2.0.1,qt 4.7.0 參考qt幫助文件,對qaudioinput類以及qaudiooutput類進行操作,實現錄音以及放音.工作流程 test record ver0工程錄音3s,將聲音檔...

用Qt實現錄音以及放音

環境 ubuntu10.04,qt creator 2.0.1,qt 4.7.0 參考qt幫助文件,對qaudioinput類以及qaudiooutput類進行操作,實現錄音以及放音.工作流程 test record ver0工程錄音3s,將聲音檔案儲存在 root qt code test.raw...

Qt文件閱讀筆記 Qt5錄音功能的實現

目錄 基本概念 與例項 首先是qt5中的新特性 qt5中關於多 的新特性 1.qml api介面 2.能同時使用mediaplayer和videooutput 3.qml torch類 4.增加了qaudiorecorder這一新類 5.更加強大的qaudiooutput和qaudioinput 6...