zoukankan      html  css  js  c++  java
  • .NET 使用 VLC 播放视频

    使用 VLC 播放监控有几个月了,现在是多个项目中都有用到。在使用的过程中也有一些细节供大家参考。

    一、对 VLC 的了解

    VLC 是一个开源的跨平台多媒体播放器及框架。

    VLC 官方出的有播放器、编辑器等专业工具在视频领域使用。

    VLC 是基于 ffmpeg 的。对于 ffmpeg 这个算是视频方面的最底层基础的了,很多主流的播放器等都是基于此。

    更多的情况可以访问 官方网站

    二、.NET 使用 VLC

    在项目中右键-“管理 NuGet 程序包”,打开NuGet界面,查找 VLC 相关的包。从使用度、更新速度等,从中找出两个较好的(这里只是自己观点)。

    1、Vlc.DotNet

    这个包是个人开源在 GitHub 上面的,使用人数比较多,也一直在维护。

    可以直接从 GitHub 上面下载源码,并且源码中还有很多例子,看例子挺容易上手。

    有一个问题是,因为需要 vlc 的dll文件包,这里需要在初始化的时候指定 libDirectory。

    2、VideoLAN.LibVLC

    这个是 VideoLAN 官方出的包,使用人数也较多。

    其源码是在官方网站下的代码路径中:代码地址,也是开源,可以下载,也包含一些实例代码。

    这个不需要初始化的时候指定 libDirectory。

    这两个都可以在 WinForm 和 WPF 中使用。

    这两个只有引用了 NuGet 包局可以使用,运行程序的时候会自己下载所需要的 lib 文件。

    三、全屏、不显示提示字体

    1、全屏

    这里的全屏的话只能在初始化的时候设置好,在窗体变化了后就不能再全屏。

    VideoLAN.LibVLC 中:

    _mediaPlayer = new MediaPlayer(_libVLC)
    {
      Fullscreen = true,
      AspectRatio = this.Width + ":"+ (this.Height -30)
    };

    Vlc.DotNet 中:

    string ratio = border.ActualWidth + ":" + border.ActualHeight;
    
    vlcControl.Video.FullScreen = true;
    vlcControl.Video.AspectRatio = ratio;

    2、不显示提示字体

    这个提示是:例如在截屏的时候显示截屏文件名

    现在只找到在 VideoLAN.LibVLC 中的方法:

    List<string> paramsStr = new List<string> { "--no-osd", "--no-snapshot-preview" };
    _libVLC = new LibVLC(paramsStr.ToArray());

    初始化的时候传字符串的参数。

  • 相关阅读:
    01 WEB白帽子Python入门
    07 SSRF漏洞
    JAVA基础学习day04--IDEA、方法
    一些常用的计算机快捷指令
    记录一次xss平台的安装
    upload-labs
    蓝队防护基础
    bagecms的代码审计
    window入侵排查基本
    常用端口总结
  • 原文地址:https://www.cnblogs.com/zhurong/p/11496146.html
Copyright © 2011-2022 走看看