LibVLC.NET 與WPF繫結播放器
阿新 • • 發佈:2019-01-01
先決條件
LibVLC.NET提供.NET繫結到VLC媒體播放器的LibVLC核心庫(libVLC)。由於使用了一些更新的LibVLC功能,LibVLC.NET需要VLC版本1.2,可以在這裡下載。
如果您已將VLC媒體播放器(1.2)安裝在其預設位置(例如C:\ Program Files(x86)\ VideoLAN \ VLC),那麼LibVLC.NET應該可以直接使用。 要使用libVLC的本地副本,將檔案libvlc.dll,libvlccore.dll和資料夾外掛複製到名為VLC的資料夾中,以將其應用到您的位置。 您也可以在執行時指定libVLC DLL的目錄,並提供您自己的目錄。
本地繫結
移植到LibVLC.NET / C#的http://wiki.videolan.org/LibVLC_Tutorial#Sample_LibVLC_Code的libVLC教程如下所示:
本教程包含在解決方案資料夾“Tests”中的專案教程中。using System; using System.Threading; using LibVLC.NET; class Program { static void Main() { LibVLCLibrary library = LibVLCLibrary.Load(null); IntPtr inst, mp, m; inst = library.libvlc_new(); // Load the VLC engine m = library.libvlc_media_new_location(inst, "path/to/your/file"); // Create a new item mp = library.libvlc_media_player_new_from_media(m); // Create a media player playing environement library.libvlc_media_release(m); // No need to keep the media now library.libvlc_media_player_play(mp); // play the media_player Thread.Sleep(10000); // Let it play a bit library.libvlc_media_player_stop(mp); // Stop playing library.libvlc_media_player_release(mp); // Free the media_player library.libvlc_release(inst); LibVLCLibrary.Free(library); } }
WPF繫結
LibVLC.NET.Presentation提供可用於播放媒體的元素MediaElement:
...
可以通過呼叫MediaElement例項上的播放,暫停或停止等方法來控制播放。 MediaElement例項的屬性當然會在其排程器執行緒中更改; 但可能不會立即。WPF示例可以在解決方案資料夾“Tests”的專案TestPresentation中找到。