ios - 在iOS中检测音频文件中的间隙

标签 ios audio

我正在开发用于语言学习的应用程序(带有发音的外来单词的卡片)。我可以使用旁白,但是我想可以导入带有本地发音的音频CD。问题是给定部分的音频文件没有按单词划分。有什么方法可以检测它们之间的差距?

我设法将歌曲从iPod库导入到app文件夹中,因此可以使用AVFoundation等。我认为可以通过处理单个样本来实现,但是我不确定如何做到这一点。任何帮助,将不胜感激。

最佳答案

我终于设法通过处理单个音频样本来完成此任务。另一个问题的答案很不错,这些问题确实有助于理解如何获取所需的所有音频信息的方式:
AVAudioPlayer - MeteringReading audio samples via AVAssetReader

你必须:

  • 计算每个样本的绝对值(幅度数据的 float 值)
  • 忽略噪音(只需设置一些适合您音频文件的容差)
  • 遍历样本并保存声音信号的位置

  • 请注意,采样表示经过零的波形,因此您需要向前分析几个采样以查看是否没有其他音频信号。这同样适用于有时可能超过您的公差的峰值的噪声。

    关于ios - 在iOS中检测音频文件中的间隙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22101858/

    相关文章:

    ios - @2x 不完全是 2x 时的问题

    ios - cellForRowAtIndexPath 如何仅调用它一次而不是在滚动后调用它

    ios - UIView 动画在设备上滞后

    ios - 如何确定 EKCalendar 是 Facebook 日历?

    java - 需要帮助来控制我的电脑的主输出扬声器

    python-3.x - 在 Python 中使用 FFMPEG 时导致此错误的原因是什么?

    c++ - 使用 C++ 在运行时生成声音

    ios - AVAudioEngine.connect 在硬件而非模拟器上崩溃

    audio - 创建自定义声音识别软件以切换音频的建议

    android - 是否有接受 Intent 的开源音频播放 Android 应用程序?