我正在尝试编写一个简单的调谐器(不,不是为了制作另一个调谐器应用程序),我正在查看AurioTouch示例源(有没有人试图评论这段代码?).
我担心的是,在查看频域图时,aurioTouch似乎并没有真正起作用.我在乐器上演奏一个单音符,我没有看到一个很好的有序,小的频率组,在音符的适当频率处有一个弦乐峰值.
有没有人使用aurioTouch足以知道底层代码是否有效或者它是否只是一个原始样本?
我有其他选择使用FFTW或KISS FFT.有人有这方面的经验吗?
谢谢.
无论图书馆是否正确生成,你都在寻找一种在现实生活中很少存在的模式.只有完美的正弦波,电子产生,才能在频率中产生均匀的离散的"尖峰".图形.如果您不相信它会尝试在winamp或媒体播放器中启动"频谱分析仪"可视化.这不是PC的错.
想象一下你脑海中的锯齿波或方波.那些急转弯 - 波浪上的角落或点,看起来像FFT的高次谐波,甚至是真正的傅立叶.如果你曾经在一个示波器上看过一个真正的"sqaure wave/sawtooth",或者甚至是一个应该产生正弦波的乐器产生的"正弦波",那就看看所有尖锐的角落和缝隙一个音符(如果你没有一个音域只是以大胆的方式放大波形 - 你缩放得越多,你看的音符越高).是的,这些偏差都算作频率.
有时在频谱分析中很难区分一个音符和整个管弦乐队之间的区别.
那耳朵怎么做呢?它考虑整个波形.那么你的下脑就会向你的大脑说谎输入是什么:一个音符,而不是一堆泛音.
你不能完全做到这一点,但你可以通过'训练'来估算它.
在仪器上播放音符并"保存"频率图.对于多个频率范围内的音符,或者更好的所有音符,请执行此操作.
然后通过将该仪器的保存图形乘以2 ^(1/12)(或1/4步长的1/24等)来插入音符以填充间隙(1/2或1/4步).
弄清楚如何将它们存储在可快速搜索的数据结构中,如BST或trie.只有它必须返回'这个'有多接近'得分.它必须通过比例的频率来识别匹配,以防它出现在不同的音量中.
下次您正在寻找该乐器的音符时,只需获取"听到的"频率图并在该数据结构中找到它.您可以录制多个制作不同波形的乐器并搜索它们.如果有背景声音或多个音符,请选择最接近的匹配.然后,如果您想识别其他音符,请从采样的音频中"减去"找到的频率模式,然后冲洗,重复发泡.
如果你曾经试着通过唱成吉他调音器来调整自己,你就会知道调音师并不聪明.当然,有些乐器(声音esp)真的漂浮在球场周围并产生不断变化的波形(即使没有人唱歌).
你不必完全得到一个"简单"调谐器应用程序的幻想,但如果你不是只做另一个调谐器应用程序,我猜你真的想要识别笔记(例如,你可能想要自动生成midi文件收音机上的歌曲;-)
祝好运.我希望你找到一个可以完成所有这些垃圾的库,而不必自己动手.
请注意以下网页:http ://www.feilding.net/sfuad/musi3012-01/html/lectures/015_instruments_II.htm在页面下方,有各种风琴管道的频谱分析.有很多很多的含义.这些都可以通过足够的工作来检测 - 如果你先用他们"训练"你的应用程序(就像告诉孩子一样,'这就像单簧管听起来......')
归档时间: |
|
查看次数: |
8800 次 |
最近记录: |