MATLAB音訊訊號處理(一):函式簡易用法(audioread,sound函式)
一、讀取音訊檔案
函式名稱:audioread
呼叫格式:
- [y,Fs] = audioread(filename)
- [y,Fs] = audioread(filename,samples)
變數含義
filename:檔案的位置加名字,常用的在桌面的檔案,音訊格式為WAV,注意檔名帶引號,特別注意的是,如果檔案是在MATLAB選單欄下的當前檔案路徑下,可以只寫檔名,如果不在這個路徑裡面呼叫,需要把完整的全部地址寫進去,程式如下
[y,Fs]=audioread('C:\Users\Administrator\Desktop\1.wav');
Fs:取樣頻率,1秒內對連續的音訊訊號取的點的個數
y:輸出的音訊數字訊號,預設是n行2列,其中2的意思是,這個音訊訊號是兩個聲道的,n的值等於該音訊訊號的時長乘取樣頻率Fs。
samples :音訊讀取區域,samples其實是一個陣列,意思就是一段音訊比如是1分鐘,但是我只需要讀取一部分,比如0-20s,20s-40s,40s-最後,那麼執行下面程式可以實現
Fs = 48000; %%定義取樣頻率(系統預設的)
samples1 = [1,20*Fs];
samples2 = [20*Fs,40*Fs];
samples3 = [40*Fs,inf];
[y1,Fs]=audioread('1.wav',samples1);
[y2,Fs]=audioread('1.wav',samples2);
[y3,Fs]=audioread('1.wav',samples3);
二、播放音訊檔案
函式名稱:sound
呼叫格式:sound(y,Fs)
播放一個音訊檔案只需要給出兩個引數,好奇的我突發奇想寫了下面幾條語句
[y,Fs]=audioread('1.wav');
sound(y,Fs);
sound(y,0.5*Fs);
sound(y,2*Fs);
依次執行以後發現,改了這個Fs,好像就是改變了語速,也就是Fs是播放音訊的頻率,貌似就簡單完成了語速的調整,當然可以也可以對y進行倍數的調整,看一下效果。不過突然出現個問題,音訊時間太長了,MATLAB一直在那裡放,怎麼讓他停下來呢?只需要在命令列寫下面一條語句,按Enter鍵
>> clear sound
>>
三、生成音訊檔案
函式名稱:audiowrite
呼叫格式:audiowrite(filename,y,Fs)
y和Fs是需要生成的音訊檔案的音訊資訊和採集頻率,必須事先生成好資料,直接寫會報錯。
下面程式實現了將原音訊訊號擷取了12-26s,並儲存成一個新的檔案,執行程式以後,桌面會多一個名字為2的音訊檔案,格式是.WAV
%%當前預設路徑是桌面
Fs = 48000;
[y,Fs]=audioread('1.wav',[12*Fs,26*Fs]);
audiowrite('2.wav',x1,Fs);
相關文章
- 語音訊號處理獲取 NFFT 的自定義函式音訊FFT函式
- Matlab中erf函式的用法Matlab函式
- Dart函式、類和運算子-處理資訊Dart函式
- MatLab 基本影像處理(3)——函式變換Matlab函式
- 解析Linux訊號集操作函式Linux函式
- 【C/C++】訊號處理之sigaction函式的健壯性測試C++函式
- matlab表示函式Matlab函式
- python函式符號sympy的用法Python函式符號
- MATLAB及其訊號處理基礎Matlab
- 陣列處理函式陣列函式
- Qt5的訊號和槽函式QT函式
- QT之靜態函式傳送訊號QT函式
- Python 音訊訊號處理庫 librosaPython音訊ROS
- abs函式用法函式
- QT槽函式獲取訊號傳送物件QT函式物件
- MATLAB影像處理imadjust()函式調節影像的對比度示例Matlab函式
- 基於MATLAB的簡易音樂數字均衡器設計(不採用MATLAB內建函式實現)Matlab函式
- PHP 自定義函式用法及常用函式集合PHP函式
- MATLAB中linspace函式使用Matlab函式
- Python range() 函式用法Python函式
- SSD-函式用法函式
- GetModuleFileName函式的用法函式
- Instr函式的用法函式
- SQL LEN()函式用法SQL函式
- Python排序函式用法Python排序函式
- Sanic 處理函式修飾器函式
- mongoDB中聚合函式java處理MongoDB函式Java
- JavaScript 註冊事件處理函式JavaScript事件函式
- echarts 繫結事件處理函式Echarts事件函式
- C語言之字串處理函式C語言字串函式
- HMS Core音訊編輯服務支援7種音訊特效,助力一站式音訊處理音訊特效
- 箭頭函式、簡寫函式、普通函式的區別函式
- StretchBlt函式和BitBlt函式的區別和用法函式
- C語言中函式printf()和函式scanf()的用法C語言函式
- MATLAB巢狀函式練習Matlab巢狀函式
- Python語音訊號處理的一些kitPython音訊
- 函式式API簡介函式API
- 【Oracle的NVL函式用法】Oracle函式