2009-09-22 16 views
19

私は、オーディオファイル(mp3、wavなど)から機能を抽出し、後でどのような目的で使用することができるかについて学習し、書くことに興味があります。将来私はそれを使用して音楽類似性のためのソフトウェアを作成したいと考えています。オーディオ機能の抽出

助けてくれるライブラリがありますか?私はlibxtractについて知っていますが、それを使用していません。

また、オーディオストリームを処理するのに適した低レベルのc/C++ライブラリはありますか?私は単にこの分野での経験がありません。助けのための

おかげで、

エリック

+1

は、あなたが "機能" とは何を考えていますか? – RedFilter

+2

私が「フィーチャ」と言うとき、私はAIの理論的な定義を指しています。機能とは、オーディオを区別したりグループ化したりするために使用できるメトリックです。例えば、平均値または分散および他の統計的なものは、フィーチャとすることができる。 – esiegel

答えて

14

Marsyasは、オーディオ機能抽出も提供する非常に完全なフレームワークです。
これはC++で書かれており、あらかじめ定義されたコンポーネントをプラグインできる「パッチ適用」メカニズムを備えています。
フレームワークにはいくつかの例があります。
ソースを見て、カスタムエクストラクタを作成する方法を学んでください。マルシュアスが付属していますbextractコマンドラインツールを抽出することができ

  • 別MFCC
  • ゼロクロッシングレート
  • スペクトル重心
  • ...

マルシュアスは、Windowsを含む複数のプラットフォームをサポートしています、LinuxとMac OS X(私はまた、それがiPhoneでも動作することを述べた記事を見た)

2

まず、FFTおよびデジタル信号処理についてお読みください。次に、音声認識に関するテキストを取得します。音声認識エンジンは、話している内容を判別するために音声から「機能」を抽出します。

私は、ケプストラル係数が機械学習の意味で優れた「機能」を作っていることを発見しました。

6

libxtractもあり、リアルタイム使用のために設計された50以上のオーディオ機能の包括的なセットを提供します。最小の依存性を持つ「無駄のない」ライブラリであり、PythonとJavaのバインディングを提供します。また、「外部オブジェクト」もあり、Pure Dataのリアルタイムコンピュータ音楽環境でlibxtract機能を利用できるようにします。

libxtractの標準的な参照はthis paperです。

14

完全を期すために、ここでは私の知るオプションです:

YaafeとlibXtractが、おそらく最も高く、性能の面で最適化されている(ベンチマークを参照してください以下)。それらは両方とも、特徴抽出器間で中間計算を共有する。たとえば、ウィンドウごとに1つのFFTだけを実行し、FFTを必要とする抽出プログラムはそのFFTを参照するだけです。より高いレベルの機能の場合と同じです。言及された他のエクストラクタはプラグインアーキテクチャに依存しているため、実際には行っていません。つまり、各エクストラクタはスタンドアロンである必要があります。

ソニックアノテーターとフレンドはプラグインアーキテクチャの恩恵を受け、あらゆる種類のサードパーティフィーチャーエクストラクタ(libXtract、aubio、Essentiaなど)を楽しむことができます。 Vampプラグインのエコシステムは、実際には非常に多様で素晴らしいものです。 Vamp Plugin SDKにプラグインホストを構築するための完全なサンプルコードがあります。

私はEssentiaについてほとんど知りませんが、それは他よりも新しく、Pompeu Fabraの優れた音楽技術グループのものです。それは、大きくて組織的なプロジェクトのようだ。ドキュメントはとても良いです。彼らは、大規模な音楽分析プロジェクト(FreesoundやAcousticBrainzなど)でそれを使用しています。プロジェクトの焦点は、パフォーマンスと正確さにあるようです。一見の価値がある。

MARSYASはライブラリだけでなく、フレームワーク全体です。ドキュメントはかなり良いです。これは積極的な開発の下にあり、UVicのGeorge Tzanetakisによって定期的に提供されるMOOCの一部です。 MARYSYASを中心に構築されたアプリやプロジェクトがかなりあるようです。

CAMELとMaaateは休眠しているようです - 2010年と2012年のそれぞれから新しいリリースは見られませんでした。

 
      S.A. Marsyas  YAAFE 
MFCC  1506  1168  142 
Centroid 724   942  235 
Rolloff  731   951  194 
ZCR   221   620  57 
Total  3182  3681  628 
2

チェックアウトのウェブサイトhttp://www.audiocontentanalysis.org/

はここで32KHzのモノラルwavファイルの40時間に特徴抽出を行うソニックAnnotatorは、マルシュアスとYAAFEを比較する(秒)のベンチマークです。 「ソフトウェア」のセクションには、オーディオ信号処理、機能抽出、音楽情報検索に関連するさまざまなライブラリのリストがあります。 さらに、ウェブサイト(およびその本)は、トピック全体を掘り下げるための非常に良い出発点のようです。

関連する問題