【问题标题】:Audio analyzer for finding songs pitch用于查找歌曲音高的音频分析器
【发布时间】:2009-08-20 18:31:42
【问题描述】:

是否可以以编程方式分析音频音高。例如,我知道大多数播放器都会显示图表或条形图,如果歌曲的音高@时间 t,条形图会在时间 t 上升 .. 类似这样的东西。是否有任何实用程序/工具/API 来确定歌曲的音高,以便我们将其插入到上下移动的小节中。

感谢您的帮助

【问题讨论】:

    标签: java c++ iphone


    【解决方案1】:

    朴素但稳健:将适度长度的片段转换为Fourier 空间和find the peaks。根据需要重复。

    速度可能是个问题,因此请选择分段长度作为 2 的幂,这样您就可以使用 Fast Fourier Transform 了,嗯,

    已经有很多关于 SO 的相关内容。试试看:https://stackoverflow.com/search?q=Fourier+transform

    【讨论】:

      【解决方案2】:

      好吧,很遗憾,我并不是真正的 iPhone 音频专家,但我可以为您指出一些很好的资源。

      Core Audio 可能会成为您想做的一件大事:htp://developer.apple.com/iphone/library/documentation/MusicAudio/Conceptual/CoreAudioOverview/Introduction/Introduction.html

      同样,音频工具箱可能会有所帮助:htp://developer.apple.com/iphone/library/navigation/Frameworks/Media/AudioToolbox/index.html

      如果您有开发者帐户,论坛上有很多人可以帮助您:htps://devforums.apple.com/community/iphone

      您必须在这些 URL 的 http 部分添加一个“t”,因为我不能发布多个超链接(抱歉!)。

      【讨论】:

        【解决方案3】:

        要查找歌曲的当前音高,您需要了解离散时间傅里叶变换。要找到节奏,您需要自相关。

        【讨论】:

          【解决方案4】:

          我想您所说的可能是图形均衡器,它显示音频信号中给定时间不同频率范围的幅度。它通常配备控制来修改给定频率范围之间的幅度。这是example。你是这么想的吗?

          编辑:另外,您的众多标签并没有真正说明您可能在这里使用的语言,所以我不能真正建议任何具体的技术或库。

          【讨论】:

            猜你喜欢
            • 2014-01-19
            • 1970-01-01
            • 1970-01-01
            • 2020-09-18
            • 1970-01-01
            • 2022-10-15
            • 2011-06-02
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多