WebオーディオAPIを使用して、マイクからのサウンドの周波数を取得しています。このため、私はこのgithubリポジトリに便利なコードを見つけました:https://gist.github.com/giraj/250decbbc50ce091f79e。Web Audio API - 正しい周波数を取得する
私の問題は、わずかな音だけ、さまざまな周波数が得られていることです。この音は私の声や楽器からのものです。
これらの周波数は、90〜4000Hzに似ています。しかし、私が知っているように、人間の声または楽器からの音符は、Hz単位で1つの周波数を持つことができます。そして私はかなり確信しています、私はただ一つのトーンを演奏しています。
どのようにして、トーンごとに3つまたは4つの周波数のどの周波数が私が探している周波数かを知ることができます。 C、D、Eのような音符をその周波数から認識するためには、この値が必要です。私はこの問題が話題ではないことを願っています。なぜなら、解決策を見つけようと本当に努力していたからです。API自体から解決できる問題であるか、何らかの理由で何らかの周波数を除去しなければならないかどうかわかりません。私はどんな種類の助けにも感謝します。
編集:この周波数リストに記載されている音符と同じ値に達することはありません。http://www.phy.mtu.edu/~suits/notefreqs.html。私はピアノアプリを使用しています。ピアノアプリは、プレイストアのフリークエンシーアプリに常に正しい周波数を与えています。だから、私は受け取った結果を疑うことさえある。
ほとんどの場合、サウンドは単一の周波数ではなく、稀にしか人工的ではありません。私たちがトーンとして知覚していることは、実際にはある周波数fのコンテンツ(基本と呼ばれ、あなたが考えているもの)と一連の「高調波」のコンテンツで構成されています。 '(' 2f、3f、4f、5f、等)。演奏される音符を決定するには、それを考慮する必要があります。これを行う1つの方法は、スペクトログラムの高調波間の距離( 'f ')を探すことです。 – Linuxios
このアドバイスをいただき、ありがとうございました。私はこの問題について考えます。 – Kuhfleisched