ラインイン/マイクオーディオからのデータの多くの特徴を認識できるアルゴリズムを書き/プログラム/開発したいです。オーディオ ストリームは音楽であり、曲同士を区別するために特徴を除外したいと思います。区別することで、曲のジャンルを区別することができます。
私が絶対に検出したい重要なことの 1 つは、曲の小節/ビートの種類です。たとえば、曲が 3/4 拍子であるかどうかを知りたいとします。
私が見つけた唯一の有益な記事は BPM 検出に関するものでしたが、それは曲と別の曲を区別するのに十分ではありません.
FFT は、オーディオ ストリームからさまざまな特性を取得するための良い出発点ですが、どこから始めればよいかわかりません。FFT でバー/ビートを取得することは可能ですか? これに関する良いチュートリアル/コード例はありますか?
FFT は、オーディオ ストリームの特性を取得するのに十分ですか? または、オーディオ ストリームの特性を取得するのに適した他のアルゴリズムはありますか?
C# は私が最も経験のあるプログラミング言語であるため、できれば C# で行うことをお勧めします。これは C# で可能ですか、それとも別の言語の方が優れていますか?
私の質問を要約すると、曲を区別するためのビート/バーやその他の情報を取得するために、オーディオ ストリームの特徴を見つけることに関する情報を探しています。