在MATLAB中讀取.wav文件,使用wavread函數(shù)可以輕松實(shí)現(xiàn)。例如,[x,Fs,bits]=wavread('wav文件'),這里的x代表采樣數(shù)據(jù),F(xiàn)s是采樣率,bits是每個樣本的位數(shù)。如果文件名中沒有擴(kuò)展名,.wav將會被自動添加。采樣數(shù)據(jù)的幅度值位于-1到+1之間。如果需要獲取采樣率和每個樣本的位數(shù),可以使用[Y,FS,NBITS]=wavread(FILE)。這里,Y是采樣數(shù)據(jù),F(xiàn)S是采樣率,NBITS是每個樣本的位數(shù)。為了獲取文件中的前N個采樣,可以使用[...]=wavread(FILE,N)。若需要獲取N1到N2之間的采樣,則使用[...]=wavread(FILE,[N1 N2])。若想要知道文件中的音頻數(shù)據(jù)大小,可以使用SIZ=WAVREAD(FILE,'size'),這將返回音頻數(shù)據(jù)大小的向量SIZ=[samples channels]。wavread函數(shù)還可以返回文件中的附加信息,通過[Y,FS,NBITS,OPTS]=wavread(...),OPTS是一個結(jié)構(gòu)體,其內(nèi)容因文件而異。常見的字段包括'.fmt'(音頻格式信息)和'.info'(可能描述主題標(biāo)題、版權(quán)等文本信息)。該函數(shù)支持多通道數(shù)據(jù),每樣本位數(shù)可達(dá)16位。如需進(jìn)一步了解,請查閱相關(guān)文檔。值得注意的是,該文件讀取器僅支持Microsoft PCM數(shù)據(jù)格式,不支持wave-list數(shù)據(jù)。簡化使用,直接使用x=WAVREAD('wav文件')即可。