【发布时间】:2014-05-02 14:03:40
【问题描述】:
我正在尝试在 Simulink 中实现一个使用环形/圆形缓冲区的音高变换算法,但我不知道这是如何完成的。我使用麦克风流式传输音频信号,我想将数据存储在循环缓冲区中以更改音频的音高,我想知道如何实现这样的缓冲区。
【问题讨论】:
标签: circular-buffer pitch-shifting
我正在尝试在 Simulink 中实现一个使用环形/圆形缓冲区的音高变换算法,但我不知道这是如何完成的。我使用麦克风流式传输音频信号,我想将数据存储在循环缓冲区中以更改音频的音高,我想知道如何实现这样的缓冲区。
【问题讨论】:
标签: circular-buffer pitch-shifting
最简单的方法是以循环方式递增数组的索引。
bufSize = 10;
circBuffer = zeros(bufSize,1);
for i = 1:15
ind = mod(i-1,bufSize) + 1;
circBuffer(ind) = i;
end
你需要比这更复杂的东西吗?
【讨论】: