zoukankan      html  css  js  c++  java
  • 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;
                }
  • 相关阅读:
    eslint自动格式化
    焕肤功能
    Web Components
    Webpack 中的 sideEffects
    andriod 新建Activity_ Form
    那么唯美
    C# PDF添加水印
    停止触发器
    sp_sys_ERPTrigger_base
    sql语句返回主键SCOPE_IDENTITY()
  • 原文地址:https://www.cnblogs.com/tiandi/p/6252648.html
Copyright © 2011-2022 走看看