Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将VLC播放器的xaml元素添加到WPF应用程序_C#_Wpf_Vlc - Fatal编程技术网

C# 将VLC播放器的xaml元素添加到WPF应用程序

C# 将VLC播放器的xaml元素添加到WPF应用程序,c#,wpf,vlc,C#,Wpf,Vlc,我正在用C#WPF制作一个视频游戏。我有大量的MediaElement,可以在需要时运行mp3和mp4文件。最近我读到仅使用这些文件格式就要支付许可费,并决定将其转换为ogg和ogv格式 只是想让你明白:我并不是在尝试制作自己的视频播放器。我只需要在游戏的正确阶段运行相关文件 我在网上找到了一些信息,现在正在尝试制作一个小的测试应用程序,它只在开始时运行一个视频 我安装了那些NuGet插件(不知道需要哪一个): Meta.Vlc、Vlc.DotNet.Core、Vlc.DotNet.Core.I

我正在用C#WPF制作一个视频游戏。我有大量的MediaElement,可以在需要时运行mp3和mp4文件。最近我读到仅使用这些文件格式就要支付许可费,并决定将其转换为ogg和ogv格式

只是想让你明白:我并不是在尝试制作自己的视频播放器。我只需要在游戏的正确阶段运行相关文件

我在网上找到了一些信息,现在正在尝试制作一个小的测试应用程序,它只在开始时运行一个视频

我安装了那些NuGet插件(不知道需要哪一个):

Meta.Vlc、Vlc.DotNet.Core、Vlc.DotNet.Core.Interops、Vlc.DotNet.Wpf

这是我的xaml文件:

 <Window x:Class="Test.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"    
    xmlns:wpf="clr-namespace:Vlc.DotNet.Wpf;assembly=Vlc.DotNet.Wpf"
    xmlns:local="clr-namespace:Test"
    mc:Ignorable="d"
    Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
<Grid>
    <MediaElement x:Name="movTest" Panel.ZIndex="1" HorizontalAlignment="Left" Height="319" Margin="10,0,0,0" VerticalAlignment="Top" Width="507" LoadedBehavior="Manual" Source="Resources/VideoFallingFromTable.ogv"/>
    <wpf:VlcControl x:Name="movTest2" Panel.ZIndex="2" />
</Grid>
但我只有黑色的窗户,没有声音。我想我做错了什么。 你能帮我学习在WPF中运行VLC播放器吗

谢谢,, 叶甫盖尼

更新: 我尝试了以下代码:

        VlcControl thisVlcControl = new VlcControl();
        Uri src = new Uri(movTest.Source.ToString(), UriKind.RelativeOrAbsolute);
        thisVlcControl.MediaPlayer.Play(src);

出于某种原因,它可以与mp4文件一起使用,但不能与ogv一起使用。

您读过/尝试过这个吗?我来看看,谢谢!同样,信息太多了。我只想知道如何从我的电脑上打开一个视频文件,特别是在我的情况下。我试图研究这个问题,但是数据太多了。你是否调用
SetMedia
方法来设置播放器的源代码,然后
Play()
?是的,谎言是:“VlcControl.MediaPlayer.SetMedia(movA.source.ToString());”但我得到的是:“对象引用未设置为对象的实例。”。此外,出于某种原因,我甚至不能运行MediaElement本身,除非我从xaml中删除vlc。
        VlcControl thisVlcControl = new VlcControl();
        Uri src = new Uri(movTest.Source.ToString(), UriKind.RelativeOrAbsolute);
        thisVlcControl.MediaPlayer.Play(src);