在Windows 7上运行LibVLC.NET示例

我想为.Net C#试用VLC媒体框架绑定。

我从http://libvlcnet.codeplex.com/SourceControl/latest下载源代码,解压缩,从http://www.videolan.org/vlc/下载最新的VLC,将其安装到C:\ Program Files \。 然后我打开下载的源项目,构建它,毕竟我尝试启动D:\ libvlcnet-20526 \ trunk \ Tests \ Tutorial \ bin \ Debug \ Tutorial.exe,最后输入错误:

Unhandled exception: System dll not found exception no valid libvlc.dll could br found VLC is probably not installed! at LibVlc.Net.LibVlcLibrary.getorloadlibrary(String libVLCLibrary) 

我转到C:\ Program Files \ VideoLAN \ VLC并复制“libvlccore.dll”,“libvlc.dll”和“plugins”文件夹( http://libvlcnet.codeplex.com/中的 instruciotns),然后将这些文件粘贴到D:\ libvlcnet-20526 \ trunk \ Tests \ Tutorial \ bin \ Debug \,在同一目录下我创建“VLC”文件夹并粘贴dll,之后我复制了“VLC”文件夹并粘贴在每个上层文件夹中确定这个应用程序可以看到dll(我猜你已经注意到冗余:))。 我对“VLC”文件夹的内容做了同样的事情,仍然得到相同的错误。 我想我做了http://libvlcnet.codeplex.com/建议我做的所有事情,但我仍未启动该项目。

我错了什么?


初始化库时,我提供了VLC的路径:

  LibVLCLibrary library = LibVLCLibrary.Load("C:\\Program Files\\VideoLAN\\VLC"); 

我目前安装了2.0.0 VLC,所需版本为1.2,但官方ftp没有该版本http://download.videolan.org/pub/videolan/vlc/这次我又收到了另一个错误“程序入口指向aout_ismuted coul不在动态链接库liblccore.dll中“。 我也尝试过VLC 1.1.2,但它仍然无法启动。

我从http://libvlcnet.codeplex.com/下载了libvlcnet-20526.zip源代码。试图运行它 – 找不到VLC库。 我先尝试过诊断。

我安装了VLC,它有libvlc 2.1.2。 示例应用程序扫描了这个并检测到它不受支持。 嗯,哦。

我卸载了VLC,然后安装了最新的VLC。 它有libvlc 3.0。 当然,它也不被接受。

LibVLCNet项目主页上的描述表明它需要libvlc 1.2.x. 我没能像你一样找到那个。 厄运。

然后它发生在我身上。 LibVlc非常好……写得很好。 真的改变了吗?

我去了libvlcnet的代码,文件libVlcLibrary.cs, line 162然后看到:

 if((major != 1) && (minor != 2)) throw new Exception(String.Format("The version is not supported: {0}", version)); 

我评论说通过代码输出和调试。 找到并加载所有导出。 当然,这只是出口。 他们的参数可能已经改变。

但是,在评论完之后 – 示例应用程序运行并加载WMVvideo并成功播放它!

由于版本不正确,存在一些错误 – 例如,“下一帧”按钮会使应用程序崩溃,因此基础function在版本之间发生了变化。 但是 – 基本播放工作,并找到所有导出 – 所以LibVLCNet库它应该是可修补的,不仅是2.x而且是3.x libvlc版本。

我找到了另一个.NET C#库,它有一些工作示例http://sourceforge.net/projects/libvlcnet/

您可以使用Meta.VLC 。 它具有WPF控件。

这是github链接: https : //github.com/higankanshi/Meta.Vlc您可以在nuget上找到它: https ://www.nuget.org/packages/Meta.Vlc.Wpf/

此外,如果您需要WinForm控件,请使用VLC.NET nuget: https ://www.nuget.org/packages/Vlc.DotNet.Forms/