C#調用vlc做一個播放器
阿新 • • 發佈:2019-02-17
location root otf 應用 develop get com lec directory
開發環境:
Visual Studio 2015
.Net Framework 4.5
1.新建一個Windows窗體應用程序
修改框架為.Net Framework 4.5
2.管理NuGet包
下載安裝5個包
VideoLAN.LibVLC.Windows
Vlc.DotNet.Core
Vlc.DotNet.Core.Interops
Vlc.DotNet.Forms
Vlc.DotNet.Wpf
3.添加VlcControl
工具箱添加VlcControl,dll位於當前項目中
將VlcControl添加到窗體上
在VlcControl的VlcLibDirectoryNeeded事件中添加如下代碼(必須)
/// <summary> /// Looks for the vlc directory on the opening of the app /// Opens a dialog if the libvlc folder is not found for the user to pick the good one /// Folder for 32bits should be "libvlc\win-x86\" and "libvlc\win-x64\" for 64 bits /// </summary> ///<param name="sender"></param> /// <param name="e"></param> private void myVlcControl_VlcLibDirectoryNeeded(object sender, VlcLibDirectoryNeededEventArgs e) { var currentAssembly = Assembly.GetEntryAssembly(); var currentDirectory = newFileInfo(currentAssembly.Location).DirectoryName; if (currentDirectory == null) return; if (IntPtr.Size == 4) e.VlcLibDirectory = new DirectoryInfo(Path.GetFullPath(@".\libvlc\win-x86\")); else e.VlcLibDirectory = new DirectoryInfo(Path.GetFullPath(@".\libvlc\win-x64\")); if (!e.VlcLibDirectory.Exists) { var folderBrowserDialog = new System.Windows.Forms.FolderBrowserDialog(); folderBrowserDialog.Description = "Select Vlc libraries folder."; folderBrowserDialog.RootFolder = Environment.SpecialFolder.Desktop; folderBrowserDialog.ShowNewFolderButton = true; if (folderBrowserDialog.ShowDialog() == DialogResult.OK) { e.VlcLibDirectory = new DirectoryInfo(folderBrowserDialog.SelectedPath); } } }
4.播放在線視頻
使用VlcControl.Play()方法播放一個網絡視頻(本地視頻不能播放原因未知)
vlcControl1.Play("http://**************/******.flv");
運行結果:
參考:
https://blog.csdn.net/xuehuic/article/details/53914874
https://bbs.csdn.net/topics/390168224
https://cloud.tencent.com/developer/ask/148529
C#調用vlc做一個播放器