2011-07-27 6 views
2

私はこのフィールドを初めて使いましたので、親切にあなたの助けを求めています。ポリフォニック音楽ファイルからピアノコードを抽出できるC#ライブラリはありますか?私はこのピアノのコードを使用してMIDIファイルを作成したいです。出来ますか?あなたは私も任意のオープンソースソフトウェアを指すことができる場合は、罰金。ポリフォニック音楽ファイルからピアノコードを抽出するオープンソースソフトウェアまたはC#ライブラリはありますか?

ありがとうございます。 Shereen

+0

多型ではどういう意味ですか? – recursive

+0

それは "壊れた和音"ならどうですか?推測で –

+2

@recursive、「ポリフォニック」 –

答えて

1

EDIT:再帰的な指摘として、単にmidiファイルを読み書きする方法を探しているわけではありません。私は誤解しました。 mp3/wavファイルから音符を抽出しようとしている場合、そのようなライブラリを見つけるのは大したことではありません。デジタルの代わりに本質的にアナログデータを扱っているので、単純ではありません。私はあなたのオーディオのスペクトログラフを少なくとも表示するアプリケーションをいくつか見てきました。オーディオがきれいで、単一の楽器であれば、ノートに見えるものを見ることができます。しかし、あなたはそれをすべて手作業で把握しなければなりません。 Izotope RXは私が考えていたVSTでした。

私はこの問題を5〜6年前にしてしまい、最終的には自分のことを書くようになりました。私は何か読んで仕事をしていますが、書きませんが、最終的にはプロジェクトに取り組む時間がありませんでした。

私は NAudioを試してみます。私は個人的に使用していないので、特に保証することはできません。しかし、フィーチャーリストには、MIDIファイルの読み書きに関する広範なサポートがあるという。

+0

私は、質問者がMIDIではなくデジタルオーディオソースからノートデータを抽出しようとしていると思います。それははるかに困難です。 – recursive

2

これは「あなたが欲しいライブラリはここにあります」という回答では些細な問題ではありません。

あなたは、高速フーリエ変換とは何かを理解し始めなければなりません。それらを実装するさまざまなライブラリがあります。 FFTは、音楽ファイルのような時間次元データを周波数次元データに変換することができます。 FFTアルゴリズムを使って音楽ファイルを変換したり、周波数のピークを探したり、ノートやコードにマッピングしたりすることができます。

ここにはフーリエ解析がどのようなものであるかを示すwikipedia entryと、それをどのように適用できるかの例があります。ここで

SO C# FFT library

ない簡単で、すべてを探して誰かのために答えている - 幸運。

関連する問題