我正在尝试在 C# 中使用 MCI 播放压缩的 AVI 文件。到目前为止,我可以通过打开文件来播放它。
我打开文件的方式是这样的:
String opencommand = "open \"" + file + "\" type mpegvideo alias someMovie shareable";
int error;
error = Avi.mciSendString(opencommand, null, 0, IntPtr.Zero);
file
文件路径在哪里。视频以这种方式播放得很好。
如果我能够从已经使用 avifil32.dll 加载的流中播放它,那在我的情况下会AVIFileOpen()
好得多AVIFileGetStream()
。从 MSDN 文档看来我应该能够做到这一点。他们在这里这么说:
“MCI 可以使用文件接口指针或流接口指针打开 AVI 文件。要使用任一类型的接口指针打开文件,请指定 at 符号 (@),后跟接口指针代替文件或参数的设备名称
lpszDevice
。有关文件和流接口的更多信息,请参阅“AVIFile函数和宏。”
但不幸的是,他们没有详细说明,我不知道我应该做什么。“流接口指针”实际上是什么意思,我从哪里得到一个?因为 MSDN 肯定不会试图解释他们发明的术语。