我创建了一个简单的窗体,用Microsoft.DirectX.AudioVideoPlayback显示视频。当视频加载到面板时,它会弹出一个activemovie窗口毫秒。我怎么能解决这个问题,因为每次开始播放视频时都很烦人,这会引发这个activemovie窗口。这就像应用程序有延迟。
这是我的代码:
string path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"Photos\test.avi");
var ofd = path;
var video = new Video(ofd, true);
label3.Text = ofd;
video.Owner = panel2;
panel2.Size = new System.Drawing.Size(640,480);
video.Ending += new EventHandler(videocountdown_Ending);
video.Size = new System.Drawing.Size(640, 480);
当我按下播放视频的按钮时,它上面是一个打印屏幕。我裁剪它,我只向你展示这张照片中的面板。
答案 0 :(得分:0)
video = new Video(ofd, true);
video.Owner = panel2;
所以你在绑定到面板之前自动运行它?我想你想要另一种方式:创建,然后Owner
,然后Play
。
video = new Video(ofd, false);
video.Owner = panel2;
video.Play();
没有UI初始化的播放使视频渲染器将视频渲染到私人弹出窗口,该窗口具有历史标题"ActiveMovie",即将庆祝20周年纪念日......