私は15本のオーディオテープを持っています。そのうちの1つには、祖母と私自身が話している古い録音が含まれていると思います。適切な場所をすばやく見つけようとしても、うまくいかなかった。それを見つけるために20時間のテープを聞きたくありません。場所がいずれかのテープの先頭にない可能性があります。ほとんどのコンテンツは3つのカテゴリに分類されるようです-長いものから順に、無音、スピーチラジオ、音楽の順です。
すべてのテープをデジタル形式に変換してから、もう一度録音を探します。明白な方法は、私が他のことをしている間、それらすべてをバックグラウンドで再生することです。それは私にはあまりにも単純すぎるので、次のように、洗練されて有用性が増す順に見つけることができるオープンソースライブラリや他のコードはありますか。
私の好みはPython、Java、またはCです。
答えが見つからない場合、フィールドについて何も知らないので、検索語句についてのヒントをいただければ幸いです。
私はこれに20時間以上費やすことができることを理解しています。
ほとんどの場合、おそらく節約できるのは話者ダイアライゼーションです。これは、スピーカーIDを使って録音に注釈を付けることで機能します。これにより、ほとんど手間をかけずに手動で実際の人にマッピングできます。エラー率は通常、レコード長の約10〜15%ですが、これはひどい話ですが、これには、話者が多すぎることを検出したり、2人のIDを同じ人物にマッピングしたりすることも含まれます。
そのような優れたツールの1つは SHoUTツールキット (C++)ですが、入力形式については少しうるさいです。このツールの使用法を参照 作成者から 。 音声/音声アクティビティ検出メタデータANDスピーカーダイアライゼーションを出力します。 1番目と2番目のポイント(VAD/SAD)と少し余分な情報を取得します。これは、同じスピーカーが録音でアクティブな場合に注釈を付けるためです。
他の便利なツールは LIUM spkdiarization (Java)です。ただし、VADメタデータを取得する方法を理解するのにまだ十分な努力をしていません。すぐに使える ダウンロード可能なパッケージ を備えています。
ほんの少しのコンパイルで、これは1時間以内に機能するはずです。
最良のオプションは、音声認識または話者識別(音声認識ではない)を行うオープンソースモジュールを見つけることです。話者識別は特定の話者を識別するために使用されますが、音声認識は話された音声をテキストに変換します。オープンソースのスピーカー識別パッケージが存在する場合があります。SourceForge.netなどで「スピーカー識別」または「音声AND生体認証」を検索してみてください。私は自分で使ったことがないので、何もお勧めできません。
何も見つからない場合でも、独自のものをローリングすることに興味がある場合は、人気のある言語用のオープンソースFFTライブラリがたくさんあります。テクニックは次のようになります:
このプロジェクトを完了するための時間数は、録音を手動で聞く20時間を簡単に超える可能性があることに注意してください。しかし、20時間のオーディオをじっくりと味わうよりもはるかに楽しいでしょう。また、将来再構築するソフトウェアを使用することもできます。
もちろん、プライバシーの観点から音声が重要でない場合は、音声の試聴タスクをAmazonのメカニカルタークなどに外部委託できます。
pyAudioAnalysis を試してみることもできます:
from pyAudioAnalysis import audioBasicIO as aIO from pyAudioAnalysis import audioSegmentation as aS [Fs, x] = aIO.readAudioFile("data/recording1.wav") segments = aS.silenceRemoval(x, Fs, 0.020, 0.020, smoothWindow = 1.0, Weight = 0.3, plot = True)
segments
には、無音でないセグメントのエンドポイントが含まれます。
Java=音楽からスピーチを分離するために、時間ウィンドウのFFTスペクトルを使用できます。スピーチは、フォルマントと呼ばれるいくつかの非常に異なる周波数帯域を使用します。
おそらく、音声/音楽ブロックの100%の分離は得られませんが、ファイルにタグを付けて、興味深い部分だけを聞くだけで十分です。
私はWindows音声認識の使用についてブログ記事を書きました。 C#でオーディオファイルをテキストに変換する基本的なチュートリアルがあります。 こちら をチェックしてください。