嗨,我正在尝试创建一个重复的双音多频音调,这样我就可以用AVAudioPlayer播放它。目前,当我在一些音频编辑软件(如audacity )中循环它时,总是会在它重复的地方出现毛刺或音调变化。我需要创建一个特定的时间长度来避免这种情况吗?我最初创建了一个大胆的一秒dtmf音调,但这并不顺利地重复。
发布于 2010-10-15 06:21:10
不管你怎么尝试,它都不能流畅地重复。
您应该计算两个频率的周期,并相应地计算环路长度。
例如,如果将770和1336 hz组合在一起,则最小样本为1000/770=和1000/1336。
然后,在这里使用您的采样率。就让它变成44100。您的样本长度为:
1000*44100/770 = 57272个样本
和
1000*44100/1336 = 33009个样本
该长度的最小公共倍数是1890491448,以秒为单位,这将是42868秒。
所以,创建一个循环并播放它是不可行的。
您可以动态创建正弦波并对其进行混合,也可以为基频创建正弦波采样,然后对其进行混合或同时播放。
https://stackoverflow.com/questions/3937974
复制相似问题