.NET 使用 VLC 播放視頻

使用 VLC 播放監控有幾個月了,如今是多個項目中都有用到。在使用的過程當中也有一些細節供你們參考。框架

1、對 VLC 的瞭解

VLC 是一個開源的跨平臺多媒體播放器及框架。編輯器

VLC 官方出的有播放器、編輯器等專業工具在視頻領域使用。ide

VLC 是基於 ffmpeg 的。對於 ffmpeg 這個算是視頻方面的最底層基礎的了,不少主流的播放器等都是基於此。工具

更多的狀況能夠訪問 官方網站字體

2、.NET 使用 VLC

在項目中右鍵-「管理 NuGet 程序包」,打開NuGet界面,查找 VLC 相關的包。從使用度、更新速度等,從中找出兩個較好的(這裏只是本身觀點)。網站

一、Vlc.DotNetthis

這個包是我的開源在 GitHub 上面的,使用人數比較多,也一直在維護。spa

能夠直接從 GitHub 上面下載源碼,而且源碼中還有不少例子,看例子挺容易上手。code

有一個問題是,由於須要 vlc 的dll文件包,這裏須要在初始化的時候指定 libDirectory。orm

二、VideoLAN.LibVLC

這個是 VideoLAN 官方出的包,使用人數也較多。

其源碼是在官方網站下的代碼路徑中:代碼地址,也是開源,能夠下載,也包含一些實例代碼。

這個不須要初始化的時候指定 libDirectory。

 

這兩個均可以在 WinForm 和 WPF 中使用。

這兩個只有引用了 NuGet 包局可使用,運行程序的時候會本身下載所須要的 lib 文件。

3、全屏、不顯示提示字體

一、全屏

這裏的全屏的話只能在初始化的時候設置好,在窗體變化了後就不能再全屏。

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;

二、不顯示提示字體

這個提示是:例如在截屏的時候顯示截屏文件名

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

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

初始化的時候傳字符串的參數。

相關文章
相關標籤/搜索