readframes()
Pythonで使用すると、オンラインドキュメントによると、サンプリング周波数が返され、2バイトが返されるように見えます。各フレームに 4 バイトあると思います。
left = 2 bytes
right = 2 bytes
モノかステレオかを確認し、ステレオの場合は一度に 2 フレームを読み取り、モノの場合は一度に 1 フレームを読み取る必要がありますか?
ウェーブ ファイルには次のものがあります。
Wave_read.getframerate()
(たとえば、オーディオ CD の場合は 44100)。Wave_read.getsampwidth()
(つまり、8 ビット サンプルの場合は 1、16 ビット サンプルの場合は 2)Wave_read.getnchannels()
チャンネル (通常、モノラル用に 1 つ、ステレオ用に 2 つ)を実行するたびに、バイトWave_read.getframes(N)
が取得されます。N * sample_width * n_channels
したがって、44100Hz、16 ビットのステレオ ファイルから 2048 フレームを読み取ると、結果として 8192 バイトが得られます。