有谁知道C#VLC 1.1 Wrapper?我找到了旧版VLC的一些包装器(尚未尝试过),但新版本没有。
所以,如果您知道,请发布。
答案 0 :(得分:6)
我正在使用http://www.codeproject.com/KB/audio-video/nVLC.aspx - 它非常出色,是我为C#找到的最新库。
应该注意的是,尽管该库是使用GPL许可证列出的,但是它的作者said in comments使用了与libVLC相同的许可证,其版本2.0是LGPL。
答案 1 :(得分:4)
libvlc.net现在支持libVLC 1.1.x.您必须从SVN存储库中获取源代码;他们还没有正式发布这种支持。
答案 2 :(得分:1)
我也在寻找这个,我发现那里的大多数.NET包装都已经过时,不能立即使用,或者拥有不适合专有软件的许可证。
说,我开始考虑构建自己的包装器。由于大多数包装器的代码太多而且理解和使用都很混乱,因此使自己成为包装器的想法越来越多。说,http://www.helyar.net/2009/libvlc-media-player-in-c-part-2/是一个开始制作自己的代码的好地方。
请注意,libvlc和libvlccore已将许可证更改为LGPL。正如Jean-Baptiste Kempf在一个视频论坛中所说: “你可以抓住VLC安装> = 2.0.0附带的dll(libVLC和libVLCcore)。”
现在让它工作,你必须将libvlc.dll和libvlccore.dll放在与exe文件相同的目录中,因为一些代码指向本地目录......
要与libvlc中的一个函数互操作,请执行以下操作:
创建一个包含您要与之交互的函数的类:
static class LibVlc
{
[DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)]
public static extern IntPtr libvlc_new(int argc, [MarshalAs(UnmanagedType.LPArray,
ArraySubType = UnmanagedType.LPStr)] string[] argv);
[DllImport("libvlc", CallingConvention = CallingConvention.Cdecl)]
public static extern void libvlc_release(IntPtr instance);
}
在vlc docs的帮助下,libvlc.html“> http://www.videolan.org/developers/vlc/doc/doxygen/html/group_libvlc.html,您只能拥有所需的功能,仅此而已
CallingConvention = CallingConvention.Cdecl适用于.NET 4.0+。上述两个函数本身不会做任何有趣的事情。它们只是初始化和释放VLC框架所需的资源。
小心文件路径(特别是在链接到插件文件夹时),因为他们需要“/”而不是“\”,如“C:/ Program Files /...”