2017-08-27 46 views
-1

ギターチューナーアプリから取ったこの写真のように、マイクinput.justからのオーディオの現在の支配的な周波数の正確な値を表示するpythonでアプリケーションを作成しようとしています。マイクからの音声の周波数を知る方法

enter image description here

私はちょうど私がプログラムする方法を知っておく必要がある一部の赤でマークされました。 私はそれをPCで実行する必要がありますので、マイクポートにアクセスする方法と周波数を知る方法です。

+0

だから、基本的に何も持っていないのですか?あなたは少なくとも何かをしようとしましたか? –

+1

SOはアドバイスフォーラムではありません。これまでに何を試しましたか?あなたのコードを示してください。 – Soviut

+0

@JamesZ yah私はrrcordしようとし、フーリエ変換を取る。私は必要がありますリアルタイムでそれを作ることです – dani

答えて

0

マイクポートからオーディオを録音する方法を見つけてから、フーリエ変換を実行してスペクトルを確認します。最もエネルギーの高い周波数を見つけ、それをメーターにプロットします。

+1

あなたはそのような質問を促進すべきではない知っている。 – Y0da

+0

ありがとうございましたuim私はすでにそれをやったことがありますリアルタイムで周波数を表示するコードを探してiamを提案しました.uはあなたが事前にapp.thankを試してみることができますuは理解することができます – dani

1

最後に何も表示していないため、コードを提供しません。 しかしここには、高度な手順とヒントがあります。

1)pyaudio blocking wire streamを使用して、チャンク[pieces]の形でマイクからの入力を読み取ります。

2)各チャンクに対して、fftを適用し、すべてのチャンクの頻度を取得し、アレイ/リストに追加します。あなたは、各ビンがFFT変換した後に一つの周波数を提供するとともに、(1)

RATE = 44100 
chunk = 1024 
RECORD_SECONDS = 1 

あなたは44個のビンを持つことになりますあたりなどのパラメータを以下している場合
は、いくつかの有用な議論hereのでhere があります。

3)1秒間に(2)から得られる最大周波数max(frequency_list)を選択できます。記録する秒数。

4)chunks back to stream

5を書く)あなたは今、あなたが一緒にプレイすることができ、リアルタイムで自分の記録の持続時間までの秒あたりの周波数を持っています。

関連する問題