在游戏中加入电影的问题
我想在游戏中加入电影纹理
我是看着MSDN仿照写的代码。
代码如下:
procedure TAsphyreDevice.CreateDirectshow;
var
filterConfig:IVMRFilterConfig9;
VMRWindowlessControl:IVMRWindowlessControl;
begin
try
FilterGraph:=CreateComobject(CLSID_FilterGraph) as IGraphBuilder;//创建FilterGraph对象
VideoRender:=createcomobject(CLSID_VideoMixingRenderer9) as IBaseFilter;//创建VideoMixingRenderer9对象
Filtergraph.AddFilter(VideoRender,'VideoRender');//将VideoRender添加到FilterGraph中
VideoRender.QueryInterface(IID_IVMRFilterConfig9,FilterConfig);//获得IVMRFilterConfig9接口
FilterConfig.SetRenderingMode(VMR9Mode_Windowless);//设置窗口为Windowless模式
VideoRender.QueryInterface(IID_IVMRWindowLessControl,VMRWindowlessControl);//为什么这里得不到这个接口??
if MediaPlayWindowHandle=0 THEN
begin
Messagebox(0,'Clip Window Can''t be 0','出错',MB_ICONERROR or MB_OK);
freedirectshow;
exit;
end;
VMRWindowlessControl.SetVideoClippingWindow(MediaPlayWindowHandle); //有问题!没有能得到IVMRWindowlessControl
finally
VMRWindowlessControl:=NIL;
FilterConfig:=nil;
end;
end;
希望哪位高手能够帮帮我!!
谢谢了!!!