日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

matlab 读取WAV文件

發(fā)布時(shí)間:2025/5/22 137 豆豆
生活随笔 收集整理的這篇文章主要介紹了 matlab 读取WAV文件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近工作需要,要對wav文件中存儲(chǔ)的聲音信息進(jìn)行分析處理。所以花了些時(shí)間收集了各種數(shù)學(xué)軟件中處理wav?文件的方法。

Matlab

Matlab?是最方便的。甚至于不用寫任何代碼就能讀取?wav?文件(我用的是matlab?7.1)。在當(dāng)前路徑窗口中雙擊wav?文件就自動(dòng)將文件內(nèi)容讀入了。


圖?1?當(dāng)前路徑窗口

雙擊后會(huì)自動(dòng)彈出數(shù)據(jù)導(dǎo)入向?qū)Аata?中是波形文件(每一列對應(yīng)一個(gè)聲道),fs?存的是采樣率。這兩個(gè)變量名都可以按照自己的需要來修改。

圖?2?數(shù)據(jù)導(dǎo)入向?qū)?/p>

相應(yīng)的函數(shù)是?wavread()。?有下面的幾種調(diào)用格式。

[plain]?view plaincopy
  • y?=?wavread('filename')??
  • 這是最簡單的形式,將wav?文件中的波形數(shù)據(jù)讀入?y?中,波形的幅度范圍在[-1,?1]

    [plain]?view plaincopy
  • [y,Fs,bits]?=?wavread('filename')??
  • Fs? 存的是采樣率,單位 Hz bits? 是數(shù)據(jù)的位數(shù)。

    [plain]?view plaincopy
  • [...]?=?wavread('filename',N)??
  • 只讀取前?N? 個(gè)數(shù)據(jù)點(diǎn)。

    [plain]?view plaincopy
  • [...]?=?wavread('filename',[N1?N2])??
  • 只讀取N1? 到? N2? 之間的數(shù)據(jù)。

    [plain]?view plaincopy
  • siz?=?wavread('filename','size')??
  • 讀取wav 文件有多少數(shù)據(jù)點(diǎn), siz?為一個(gè) 1 行兩列的向量。 siz?=?[samples?channels]

    wavfinfo()?用來獲取wav文件的信息。

    [plain]?view plaincopy
  • [m?d]?=?wavfinfo(filename)??
  • 當(dāng)?filename? wav 文件時(shí)? m? 返回字符串 'Sound?(WAV)?file',否則返回空字符串。

    d?返回包含wav?新的字符串,比如像這里給出的結(jié)果:’Sound?(WAV)?file?containing:?41532?samples?in?1?channel(s)’,如果filename?不是wav文件,則返回字符串'Not?a?WAVE?file'。

    wavwrite?函數(shù)可以生成一個(gè)?wav?文件,有三種基本的調(diào)用格式。

    [plain]?view plaincopy
  • wavwrite(y,'filename')??
  • 將?y? 中的數(shù)據(jù)寫入 wav 文件,其中 y? 的每一列對應(yīng)一個(gè)聲道。要求? y? 中的數(shù)據(jù)在? [-1,?1] 。超出這個(gè)范圍的都被截?cái)唷2蓸勇誓J(rèn)為? 8000Hz 16? 位格式。

    [plain]?view plaincopy
  • wavwrite(y,Fs,'filename')??
  • Fs? 用來設(shè)定采樣率。

    [plain]?view plaincopy
  • wavwrite(y,Fs,N,'filename')??
  • N? 指定數(shù)據(jù)的位數(shù),可以為? 8 16 24 32 。當(dāng)? N? =32 時(shí), wav 文件按照 PCM? 碼來存儲(chǔ)。當(dāng) N=32 時(shí),數(shù)據(jù)按照浮點(diǎn)數(shù)格式存儲(chǔ)。這時(shí)也就不要求數(shù)據(jù)范圍在 -1 1? 之間了。

    總結(jié)

    以上是生活随笔為你收集整理的matlab 读取WAV文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。