2011-05-17 77 views
2

我在labview中創建了一個matlab腳本。在該腳本中,我嘗試創建一個音頻對象數組。但是,我遇到了一個錯誤,我無法找到解決方法。Matlab數組音頻播放器

這是腳本:

nrOfSounds = 11; 
if (exist('p') == 0) 
    [snd, freq, bps] = wavread('sounds/1.wav'); 
    p = audioplayer(snd, freq); 
    for t=2:nrOfSounds 
     [snd,freq,bps] = wavread(strcat('sounds/',num2str(t),'.wav')); 
     s = audioplayer(snd,freq); 
     p(end+1) = s; 
    end 
end 

這是錯誤:

Audioplayer objects cannot be concatenated. 

看來,我不能創建audioplayer對象的數組,但我真的不能找到一個解決這個問題的方法,因爲我對matlab沒有真正的經驗。誰能幫我這個?

回答

3

你必須使用單元格而不是數組。

nrOfSounds = 11; 
if (exist('p') == 0) 
    [snd, freq, bps] = wavread('sounds/1.wav'); 
    p{1} = audioplayer(snd, freq); 
    for t=2:nrOfSounds 
     [snd,freq,bps] = wavread(strcat('sounds/',num2str(t),'.wav')); 
     s = audioplayer(snd,freq); 
     p{end+1} = s; 
    end 
end 
+0

謝謝!這就是訣竅! – Tiddo 2011-05-17 14:44:17