看板 MATLAB 關於我們 聯絡資訊
※ 引述《wes7034 (black)》之銘言: : 如提~~ : 目前MATLAB讀WAV的指令"wavread"就我所知好像只能讀不多於雙聲道的音訊 : 有沒有大大知道,或是有什麼辦法用MATLAB讀5.1聲道嗎?? : 先謝謝各位了~~~ 不是很確定您的檔案是哪種格式,不過小弟是用下面這個網站的範例做測試的: http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Samples.html 裡面分別有一個六聲道一個八聲道,格式為 PCM 的 wav 檔。 ● 注意!接下來會修改到 MATLAB 內部的函數檔案,風險請自負。 進入 MATLAB,在 Command Window 輸入:which wavread 執行後 MATLAB 會顯示出 wavread 之函數檔位置,例如: C:\Program Files\MATLAB\R2008a\toolbox\matlab\audiovideo\wavread.m 用記事本或其他您用得順手的文字編輯器打開這個函數檔。 找到以下的段落(約在檔案的第 533 行左右,可能因版本不同而有差異) switch wavefmt.wFormatTag case 1 % PCM Format: [dat,msg] = read_dat_pcm(datack,wavefmt,ext,isNative);case 1 修改為 case {1, 65534} 最後,存檔,重開 MATLAB。 完成! P.S. 測試時若想用 soundsc 播放請注意 MATLAB 只能一次播放至多兩個聲道。 ※ 編輯: DigiPrince 來自: 61.58.102.177 (07/30 16:16)
wes7034: 真的很感謝你~~ 已經修改過了~~也可以讀了~~~ 感恩~~~~ 07/31 11:51
wes7034:不過可以問一下為什麼要這樣改嗎?? 07/31 11:54