c# winform DirectX播放器 可以任意设置宽高比 屏幕拉伸
Posted JackGIS
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# winform DirectX播放器 可以任意设置宽高比 屏幕拉伸相关的知识,希望对你有一定的参考价值。
第一步:dll引用
Microsoft.DirectX.dll
Microsoft.DirectX.AudioVideoPlayback.dll
如果没有的话,可能需要安装微软的DRECTX JDK
directx支持的视频文件格式: (*.avi; *.mov; *.mpg; *.mpeg; *.ts; *.wmv; *.vob; *.dat; *.rm; *.rmvb; *.flv)|*.avi; *.mov; *.mpg; *.mpeg; *.ts; *.wmv; *.vob; *.dat; *.rm; *.rmvb; *.flv";
第二步:开发代码
ourVideo = new Video(fileName);//视频文件路径 ourVideo.Ending += new EventHandler(ourVideo_Ending);//注册视频播放完成事件 ourVideo.Owner = this.picPlayWindow;//指定播放媒介pictureBox ourVideo.Play(); duration = ourVideo.Duration;
private Video ourVideo = null;
ourVideo.Stop();
ourVideo.Dispose();
ourVideo.Fullscreen = true;
第三步:设定屏幕拉伸和宽高比
这个的设定是,通过设定pictureBox的大小和位置实现的。
if (common.isFullScreen == true) { this.picPlayWindow.Width = players1.Width - 2; this.picPlayWindow.Height = players1.Height - 2; this.picPlayWindow.Location = new Point(2, 2); this.picPlayWindow.Visible = true; } else { Size ds = ourVideo.DefaultSize; this.picPlayWindow.Width = players1.Width - 2; this.picPlayWindow.Height = players1.Width * ds.Height / ds.Width; int x = 2; int y = players1.Height / 2 - this.picPlayWindow.Height / 2; this.picPlayWindow.Location = new Point(x, y); this.picPlayWindow.Visible = true; }
以上是关于c# winform DirectX播放器 可以任意设置宽高比 屏幕拉伸的主要内容,如果未能解决你的问题,请参考以下文章
如何从使用directx c# visual studio播放的视频中获取和处理每一帧(位图图像)
C# winform,使用 Microsoft.DirectX.AudioVideoPlayback dll 中的视频/音频类后应用程序崩溃
C# DirectX 音频/视频播放“VFW_E_UNSUPPORTED_STREAM”
使用 C#、DirectX 和 XNA 播放音频和最终用户的要求
c# using Microsoft.DirectX.AudioVideoPlayback 如何在一个视频完成后播放下一个视频