使用 WPF Vlc.Dotnet 从流中播放视频

Play video from stream using Vlc.Dotnet for WPF

我希望我的 WPF 应用程序播放给定流中的视频。尝试 google,但没有找到任何最新 Vlc.Dotnet.Wpf 版本的工作示例。我已经使用 NuGet 安装了最新的软件包,这是我目前拥有的:

我的XAML:

    <Vlc:VlcControl xmlns:Vlc="clr-namespace:Vlc.DotNet.Wpf;assembly=Vlc.DotNet.Wpf" x:Name="vlcPlayer" />

C#代码:

        vlcPlayer.BeginInit();
        vlcPlayer.MediaPlayer.VlcLibDirectory = new DirectoryInfo(@"C:\Program Files (x86)\VideoLAN\VLC\");
        vlcPlayer.EndInit();

        vlcPlayer.MediaPlayer.Play(new Uri("http://79.170.191.118:1935/formula55_2/stream55_2/playlist.m3u8"));

当我运行时,没有任何反应。但是流在 Vlc Player 中工作正常。我在这里有什么选择?

提前致谢。

这应该让你开始:

public MainWindow()
{
    InitializeComponent();
    var currentAssembly = Assembly.GetEntryAssembly();
    var currentDirectory = new FileInfo(currentAssembly.Location).DirectoryName;
    // Default installation path of VideoLAN.LibVLC.Windows
    var libDirectory = new DirectoryInfo(Path.Combine(currentDirectory, "libvlc", IntPtr.Size == 4 ? "win-x86" : "win-x64"));

    this.VlcControl.SourceProvider.CreatePlayer(libDirectory/* pass your player parameters here */);
    this.VlcControl.SourceProvider.MediaPlayer.Play(new Uri("http://79.170.191.118:1935/formula55_2/stream55_2/playlist.m3u8"));
}

您需要安装 https://www.nuget.org/packages/VideoLAN.LibVLC.Windows/,这是在 .NET 中使用 libvlc 库的正确方法。

下次,post 请提供一些日志,否则大部分都是猜测。另请查看官方示例 https://github.com/ZeBobo5/Vlc.DotNet/tree/develop/src/Samples