MCIを使用して圧縮されたAVIファイルをC#で再生しようとしています。これまではファイルを開いて再生することができました。MCIを使用してメモリからaviストリームを再生する
私は、ファイルを開く方法はこれです:file
は、ファイルパスをある
String opencommand = "open \"" + file + "\" type mpegvideo alias someMovie shareable";
int error;
error = Avi.mciSendString(opencommand, null, 0, IntPtr.Zero);
。動画はこのようにうまく再生されます。
avifil32.dllのAVIFileOpen()
とAVIFileGetStream()
を使用して既にロードされているストリームから再生できたら、私の場合ははるかに良いでしょう。 MSDNのドキュメントから、私はこれを行うことができるはずです。彼らはとてもhereを言う:
「MCIは、 ファイル・インタフェースポインタまたは ストリームインターフェイスポインタを使用してインターフェイス ポインタの型のいずれかを使用して ファイルを開くにはでAVIファイルを開く時に指定することができます。
lpszDevice
パラメータのファイルまたはデバイス名の 場所にインターフェイスポインタが続く記号(@) 。ファイルやストリーム インタフェースを詳細 については、「AVIFILE関数と マクロ」を参照してください。」
しかし、残念ながら彼らは詳細には進まず、私は何をすべきか分かりません。 "stream-interface pointer"は実際には何を意味し、どこから取得するのですか? MSDNは確かに彼らが発明した用語を説明しようとしないので。
は