任何人都可以帮助我开始在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);
}
}
看起来很好,芽我看不到视频......我只听到视频中的声音,控件只显示我什么......我做错了什么?
答案 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