私はオーディオファイルから正確なバイナリの実装を抽出したいと思います(恐らく大胆に記録されるかもしれません)。私は、音声と音を認識するための表現、すなわち基本的な音声認識ソフトウェアを抽出することを望みます。オーディオファイルのバイナリ表現を抽出する
オーディオファイルは.mp3または.wavでもかまいません。助けてください
EDIT- 音声の波形をグラフではなくバイナリ表現で取得して、音声をテキストに変換できるようにします。
私はオーディオファイルから正確なバイナリの実装を抽出したいと思います(恐らく大胆に記録されるかもしれません)。私は、音声と音を認識するための表現、すなわち基本的な音声認識ソフトウェアを抽出することを望みます。オーディオファイルのバイナリ表現を抽出する
オーディオファイルは.mp3または.wavでもかまいません。助けてください
EDIT- 音声の波形をグラフではなくバイナリ表現で取得して、音声をテキストに変換できるようにします。
基本的なWAVファイルは、ヘッダ(私は約60バイトと思っています)と実際のデータで構成されています。
データは整数のセットで構成されています。各「サンプル」について1組の整数が生成され、これは1秒当たり8000回、または1秒あたり44000回またはいくつかの他のサンプル速度であり得る。
1つの整数セット(1つのサンプルを表す)は、各チャンネルごとに1つの整数で構成されます。理論的には任意の数ですが、通常1(モノ)または2(ステレオ)です。個々の整数は、1,2,3または4バイトの長さであってもよい。
個々の整数は、特定の瞬間におけるそのチャネルのサウンドレベルを表します。表現されているサウンドが正弦波の場合、整数の値はV * sin(K * t)
となります。V
は音量、K
は一定です。t
は現在の時刻です。整数は署名されており、特定の瞬間には「音量」が負または正になることがあります(通常は時間の約半分が負となります)。 サンプルレート、チャネル数、および個々のチャネル値のサイズはすべて、ヘッダー内のフィールドに(他の情報とともに)エンコードされています。
一般に、信号の周波数を抽出するには、「時間領域」から「周波数領域」に変換するために、バイナリサウンドデータにFast Fourier Transform (FFT)を適用します。これは、一般に、サンプルレートおよび他の要因に応じて、約50回/秒の間で行われる。 (いくつかのオープンソースのFFTライブラリが利用可能です。)しかし、音声認識には他の多くのアルゴリズムも採用されています。
こんにちは、ありがとう。基本的に、私は基本的な音声認識ソフトウェアを設計したい。あなたはそれについてどうやって行くのか助けてください。あなたの説明の後でさえ私は失われています。私はソフトウェアをdesingするために隠しマルコフモデルを使用したいです。 – SKC
@SKC - あなたが多くの研究をしなければならないだろう音声認識ソフトウェアを設計したい場合。私はそれを推測しています、パートタイムは週10〜20時間働いていますが、ゼロから出発して何かを得るには1年かかります。 –
しかし、私は非常に基本的なものを探しています。おそらくメディアプレーヤーを制御する。ミニプロジェクトとしてのプレイポーズなどのようなものです。 – SKC
「オーディオファイルから正確なバイナリ実装を抽出する」とはどういう意味ですか?ファイル形式の詳細を意味する場合は、WAVファイルでこれを確認できます。https://ccrma.stanford.edu/courses/422/projects/WaveFormat/ – cyco130
すべてのファイルは、デフォルトでバイナリです。オーディオ波形をサンプリングレートのように再生するのに必要なメタデータとともに、アレイ(フロートまたはバイナリワード)として抽出することを意味する場合は、回答を編集する必要があります。 – ninjagecko
WAVファイルの形式を読み上げます。 MP3ファイルはより複雑で、おそらくすぐにそれらのファイルに騙されたくない - WAVファイルはあなたの「歯を切る」ことを可能にする。 –