在WPF中使用VLC控件

时间:2015-07-23 10:14:01

标签: c# wpf libvlc

任何人都可以帮助我开始在WPF应用程序中使用VLC控件吗? 目前我做了:在我的项目和XAML中的Created控件中添加了引用

XAML:

<Border Grid.Row="2" 
        Height="150" 
        Width="Auto" 
        Margin="10,0,10,0" 
        BorderThickness="1" 
        BorderBrush="Red" >
            <pl:VlcControl x:Name="Player" />
</Border>

代码隐藏

 public MainWindow()
 {
     InitializeComponent();

     Player.MediaPlayer.VlcLibDirectoryNeeded += OnVlcControlNeedsLibDirectory;
 }

 private void OnVlcControlNeedsLibDirectory(object sender, Vlc.DotNet.Forms.VlcLibDirectoryNeededEventArgs e)
 {
     var currentAssembly = Assembly.GetEntryAssembly();
     var currentDirectory = new FileInfo(currentAssembly.Location).DirectoryName;
     if (currentDirectory == null)
        return;
     if (AssemblyName.GetAssemblyName(currentAssembly.Location).ProcessorArchitecture == ProcessorArchitecture.X86)
        e.VlcLibDirectory = new DirectoryInfo(System.IO.Path.Combine(currentDirectory, @"vlslib\x86\"));
     else
        e.VlcLibDirectory = new DirectoryInfo(System.IO.Path.Combine(currentDirectory, @"vlslib\x64\"));
 }

 private void StartButton_Click(object sender, RoutedEventArgs e)
 {
     var d = new Microsoft.Win32.OpenFileDialog();
     d.Multiselect = false;
     if (d.ShowDialog() == true)
     {
        Uri src = new Uri(d.FileName);
        Player.Visibility = System.Windows.Visibility.Visible;
        Player.MediaPlayer.Play(src);
     }
 }

看起来很好,芽我看不到视频......我只听到视频中的声音,控件只显示我什么......我做错了什么?

1 个答案:

答案 0 :(得分:0)

我在应用启动时首先做了类似的事情

if (String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432")))
{
    VlcContext.LibVlcDllsPath = CommonStrings.LIBVLC_DLLS_PATH_DEFAULT_VALUE_X86;
    //Set the vlc plugins directory path
    VlcContext.LibVlcPluginsPath = CommonStrings.PLUGINS_PATH_DEFAULT_VALUE_X86;
}
else
{
    VlcContext.LibVlcDllsPath = CommonStrings.LIBVLC_DLLS_PATH_DEFAULT_VALUE_AMD64;
    //Set the vlc plugins directory path
    VlcContext.LibVlcPluginsPath = CommonStrings.PLUGINS_PATH_DEFAULT_VALUE_AMD64;
}

首先,您应该设置dll和plugins文件夹。您应该安装VLC 2.0或更高版本。您也可以尝试不同版本的VLC