Я настраиваю видеоплеер, используя LibVLCSharp (пакет VLC nuget) Я установил VideoLAN.LibVLC.Windows
и LibVLCSharp.WPF и до сих пор все выглядит хорошо, прежде чем я скомпилирую и запуском своего кода.
Мой файл VideoPlayer.xaml.cs так:
using LibVLCSharp.Shared;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using MediaPlayer = LibVLCSharp.Shared.MediaPlayer;
namespace kec_wpf.ui
{
public partial class VideoPlayer : Window
{
LibVLC _libVLC;
MediaPlayer _mediaPlayer;
public VideoPlayer()
{
InitializeComponent();
var label = new Label
{
Content = "TEST",
HorizontalAlignment = HorizontalAlignment.Right,
VerticalAlignment = VerticalAlignment.Bottom,
Foreground = new SolidColorBrush(Colors.Red)
};
test.Children.Add(label);
_libVLC = new LibVLC();
_mediaPlayer = new MediaPlayer(_libVLC);
// we need the VideoView to be fully loaded before setting a MediaPlayer on it.
VideoView.Loaded += (sender, e) => VideoView.MediaPlayer = _mediaPlayer;
}
void StopButton_Click(object sender, RoutedEventArgs e)
{
if (VideoView.MediaPlayer.IsPlaying)
{
VideoView.MediaPlayer.Stop();
}
}
void PlayButton_Click(object sender, RoutedEventArgs e)
{
if (!VideoView.MediaPlayer.IsPlaying)
{
//VlcControl.SourceProvider.MediaPlayer.Play(new Uri("pack://siteoforigin:,,,/assets/content/" + Title + ".mp4"));
VideoView.MediaPlayer.Play(new Media(_libVLC,
"http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4", FromType.FromLocation));
}
}
}
}
Но ошибка, которую я получаю при запуске и запуске:
DllNotFoundException: невозможно загрузить библиотеку DLL 'libvlc': указано
модуль не найден (Исключение из HRESULT: 0x8007007E)
Я не знаю, как это исправить, поскольку в папке bin / debug я вижу папку с именем "libvlc", в которой находятся папки "win-x64" и "win-x86".
Мое временное решение:
- Установите для моей программы значение x32 в
Project
>> Properties
- Скопировал
libvlc.dll
и libvlccore.dll
и все папки lua, locale, plugins и skins в мою папку отладки.
Пока это работает, но мне нужно прагматичное решение, потому что у меня VideoLAN.LibVLC.Windows
уже в проекте.