インテリジェントな音声録音:アイデアの募集
-
19-09-2019 - |
質問
会議室があり、会議が任意の即興時間に行われるとします。すべての会議の音声記録を保存したいと考えています。できるだけ使いやすくするために、会議出席者側で特別な操作は必要ありません。特定の部屋で会議を開催すると、その記録が残ることだけを知っておく必要があります。
ノンストップで録音するだけでは、データ ストレージが無駄になり、データを選別するのが面倒になるため、非効率であることは明らかです。
それには基本的に 2 つの方法があると思います。
- 録音は、サウンドレベルのしきい値に応じて開始および停止するだけです。
- 記録は継続的に行われますが、X 分のブロックに分割されます。コンテンツが含まれていないことが判明したブロックは破棄されます。
私は 2 番目の方法の方が好きです。起動が遅れたり、トリガーが失敗したりしてデータが失われるリスクが少ないと思うからです。
できればPython、Windowsで実装したいと思っています。
実装に関する提案?
おそらく独自の質問に値する追加の考慮事項:
- この目的に最適なオーディオ形式と圧縮
- 識別が非現実的であると仮定して、何人の発言者が存在するかを決定する何らかの方法
解決
これは、パスの準備ができて再利用のための手の上に何についての詳細を定義するために起こっているそれらのプロジェクトの一つです。
あなたはおそらく、それが簡単に継続的に記録し、(たとえば、時間の長い作品のために)チャンクでオフデータを保存するために見つけることができます。
フォーマットは、記録ツールとオーディオ処理ライブラリの形で何に依存することになるだろう。あなたも、あなたは2を使用することがあります。 PCMのような一の形式は、記録処理が、記憶のために圧縮されたMP3のためのWAVをコードしていた。
あなたは、オーディオストリームを持っていたら、、あなたはPCM形式(振幅値のリスト)でそれにアクセスする必要があります。単純な平均のアプローチは、おそらく会話があった場合に検出するのに十分な良いだろう。典型的なチューニング属性: トリガーへ*平均エネルギーレベル *あなたがストップを識別し、開始するには、以下のエネルギーレベルであるか、する必要があり、時間の量(私は2つの異なる値をお勧めします) *平均化する解析ウィンドウのサイズ
あなたがこれを行うライブラリを見つけない限り、参加者数については、私は簡単な解決策は表示されません。私は前に、音声認識エンジンを使用しても、オーディオ処理の合理的な金額をやって、私はこれを行うには、任意の「簡単」な方法を見ていないてきました。あなたが見ていた場合は、音声分析研究を行う大学を探し出します。あなたは、あなたのソフトウェアにいくつかの手がかりを与えるために変更することができ、いくつかのプロトタイプを見つけることができます。
他のヒント
私はあなたが困難な完全にPythonでこれを行うことを持っていると思います。あなたは、MP3ファイルの周波数/振幅の分析をやって話をしています。あなたは、ファイルを開いて、ボリュームしきい値を探し、その閾値を下回る部分をカットしなければなりません。非常に高度な信号処理を必要とする存在しているどのように多くのスピーカーを考え出すます。
一遍のGoogle検索は私のために何を上げていません。あなたはより良い運は既製のソリューションを探していたかもしれません。
aside-として、人々は知らせずに24/7を実行しているレコーダーを有することに法的な合併症があるかもしれません。