VFW (avifil32.dll) でパーツを開くことができるように、大きな AVI 2.0 (OpenDML 形式) ファイルを小さなパーツ (私の場合は 1GB 未満) に分割しようとしています。
この分割を実現する最良の方法は何ですか (できれば C# で)?
オプションの 1 つは、フレームごとにコピーすることです。ネットで同じことをする例をいくつか見つけました。しかし、これらのほとんどは、最大 RIFF 部分サイズが 1GB であるため、一般に 2GB を超えるファイルと 1GB を超える AVI 2.0 ファイルを読み取ることができない VFW を使用します。
VFW の代わりに DirectShow が必要です。フレームを手動でコピーしようとすると、オーディオ同期も台無しになると確信しています。
現在の圧縮に影響を与えず、ファイルを分割して適切な AVI インデックスを作成するだけの「ダイレクト ストリーム コピー」で VirtualDub が行うことと同様のものを探しています。