まず、独自のライブラリを使用せずにこれを実行しようとしています。これにより、移植性が向上し、ここで何が起こっているのかをよりよく理解できます。反復的な機能 (ヘッダーの解析など) を処理するために、独自のクラスとライブラリを作成しても問題ありません。
そのため、オーディオ ファイルに関する情報 (つまり、ファイル内のオーディオの長さ、サンプル数、フレーム数など) を計算するために、ストリームを介してWAV/RIFFファイルを読み取る方法を知りたいと思っています。そして、他の機能のためにそれらのフレームまたはサンプルを繰り返します。
RIFF仕様fstream
で指定されているように、バイナリファイルとして読み込んでヘッダーを許可する(そしてヘッダーからいくつかの情報を取得する)ことは知っていますが、フレームまたはサンプルへのバイト、および長さへのバイトをどのように識別しますか?
他の言語でこれを扱う問題を見つけることができますが、C++ で直接関連するものは見たことがありません。