嗨,我正在尝试创建一个重复的dtmf音,这样我就可以用AVAudioPlayer播放它了。目前 当我在一些音频编辑软件(如大胆)中循环播放时,在重复的位置总会出现毛刺或音调变化。是否有一些特定的时间我需要创建它以避免这种情况。我最初在大胆中创造了一秒dtmf音,但这并没有顺利重复。
答案 0 :(得分:0)
它不能像你尝试的那样顺利重复。
您应该计算两个频率的周期,并相应地计算环路长度。
例如,如果组合770和1336 hz,则最小样本为1000/770 =和1000/1336。
然后,在此处使用您的采样率。设为44100.您的样品长度为:
1000 * 44100/770 = 57272个样本
和
1000 * 44100/1336 = 33009个样本
长度的最小公倍数是1890491448,以秒为单位,即42868秒。
因此,创建循环并播放它并不可行。
您可以:动态创建正弦波并将其混合,或者为基本频率创建正弦波样本,然后将它们混合或同时播放。