以下は、話している人の録音を表す信号です。これに基づいて一連の小さなオーディオ信号を作成したいと思います。「重要な」サウンドの開始と終了を検出し、それらをマーカーに使用してオーディオの新しいスニペットを作成するという考え方です。言い換えれば、音声の「チャンク」がいつ開始または停止したかを示すインジケータとして無音を使用し、これに基づいて新しい音声バッファを作成したいと思います。
たとえば、ある人が自分自身を記録する場合
Hi [some silence] My name is Bob [some silence] How are you?
次に、これから3つのオーディオクリップを作成したいと思います。言うHi
もの、言うMy name is Bob
もの、言うものHow are you?
。
私の最初のアイデアは、低振幅の領域がある場所を常にチェックするオーディオバッファーを実行することです。たぶん、最初の10個のサンプルを取得して値を平均し、結果が低い場合は無音としてラベル付けすることでこれを行うことができます。次の10個のサンプルをチェックして、バッファを進めていきます。この方法で増分することで、エンベロープの開始位置と停止位置を検出できました。
誰でも良い、しかしこれを行う簡単な方法についてアドバイスがあれば、それは素晴らしいことです。私の目的のために、解決策は非常に初歩的なことができます。
私はDSPのプロではありませんが、いくつかの基本的な概念を理解しています。また、プログラムでこれを行うので、アルゴリズムとデジタルサンプルについて話すのが最善です。
すべての助けてくれてありがとう!
編集1
これまでのところ素晴らしい反応です!ライブオーディオではないことを明確にしたかったので、ライブラリを使用するソリューションは実際には選択肢ではないため、CまたはObjective-Cでアルゴリズムを自分で記述します。