如何降低PCM数据的播放速度?

时间:2011-11-03 23:23:48

标签: android audio audio-streaming

民间,

在我的Android应用程序中,我录制音频并播放。用户通常是歌手。

我现在需要能够以降低的速度播放音频。

据我所知,PCM数据只是不同频率的正弦波混合。有一个主波(最高幅度)导致歌曲的音符。

为了将速度降低2倍,起初我以为我会复制每个样本。例如,如果采样的输入PCM值为20000,25000,30000,...,我将播放20000,20000,25000,25000,30000,30000。但是,这似乎不是正确的解决方案。我似乎在这里做的只是增加正弦波的波长(因此频率)。我认为这会导致改变声音/音符。

有人可以建议如何降低或提高速度吗?

提前感谢您的帮助。

此致 彼得

1 个答案:

答案 0 :(得分:0)

如果速度你的意思是将PCM数据中的声音从慢(高大的巨人)变为快速(花栗鼠),那么

你可能想看看这个algorithm for pitch shifting.。我们的想法是根据您想要的音高获得正确的采样率。