用Qt實現錄音以及放音

2021-08-31 18:27:40 字數 3369 閱讀 5302

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!

環境: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:

[cpp]view plain

copy

print?

#ifndef widget_h

#define widget_h

#include 

#include 

#include 

#include 

using

namespace std;  

namespace ui   

class widget : public qwidget  

;  #endif // 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:

[cpp]view plain

copy

print?

#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 <

<

}  void widget::stoprecording()  

widget::~widget()    

#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 <

test_play_ver0工程:

widget.h:

[cpp]view plain

copy

print?

#ifndef widget_h

#define widget_h

#include 

#include 

#include 

#include 

#include 

using

namespace std;  

namespace ui   

class widget : public qwidget  

;  #endif // 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:

[cpp]view plain

copy

print?

#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 <

<

}  void widget::finishedplaying(qaudio::state state)  

cout <

<

}  widget::~widget()    

#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 <

給我老師的人工智慧教程打call!

用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實現錄音以及放音

環境 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...