Matlab阵列的audioplayers

时间:2011-05-17 13:07:25

标签: matlab labview

我正在labview中创建一个matlab脚本。在该脚本中,我尝试创建一个audioplayer对象数组。但是,我收到了一个错误,我无法找到解决方法。

这是剧本:

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并不熟悉。任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分: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