概述
Vlc-qt 是一个结合了 Qt 应用程序和 libVLC 的免费开源库。它包含了用于媒体播放的核心类,以及用于更快速地进行媒体播放器开发的一些 GUI 类。
由于 VLC-Qt 集成了整个 libVLC,因此具备 libVLC 的所有特性,例如:libVLC 实例和 player、单个文件和列表播放、音频和视频控制、元数据管理。并提供基于QWidget和QML的GUI框架,如果需求不是很复杂,只是简单播放和一些控制来说,用Vlc-qt来做视频播放非常简单。
官方网址是: https://vlc-qt.tano.si/
git是: https://github.com/vlc-qt/vlc-qt
官方提供了编译好的库和源码,看个人需求。
如何使用
使用官方提供的编译好的库
-
下载编译好的库,以windows为例,下载文件VLC-Qt_1.1.0_win32_mingw
-
解压得到三个目录
-
把解压后的目录bin 的内容全部放到qt安装目录笔者是(C:\Qt\Qt5.14.2\5.14.2\mingw73_32\bin),
将include下面的三个目录(VLCQtCore、VLCQtQml、VLCQtWidgets)放到qt的include目录下(C:\Qt\Qt5.14.2\5.14.2\mingw73_32\include),然后将lib文件下所有内容放到qt的lib文件夹下(C:\Qt\Qt5.14.2\5.14.2\mingw73_32\lib),环境就配置好了,
然后就可以参考官方提供的代码,保证pro文件中的路径和链接库对上就可以了。
qml pro文件:LIBS += -L C:/Qt/Qt5.14.2/5.14.2/mingw73_32/lib ** -lVLCQtCore -lVLCQtQml**
widget pro 文件 LIBS += -LC:/Qt/Qt5.14.2/5.14.2/mingw73_32/lib -lVLCQtCore -lVLCQtWidgets
自己编译(linux)
官方提供的build文档: https://github.com/vlc-qt/vlc-qt/blob/master/BUILDING.md.
Linux
Install requirements from your distribution’s repository. Supported generators are make and ninja.
Make example:
$ mkdir build
$ cd build
$ cmake … -DCMAKE_BUILD_TYPE=Debug
$ make -j8
$ make install
Windows
Build as a normal library or application.
Make sure you always use debug libraries with debug build and release libraries with release build after using it in your project.
Supported generators for MSVC are nmake, jom and ninja; for MinGW: mingw32-make and ninja. Run specific Qt shell to select its version. VLC path needs to be specified manually.
Ninja example for MSVC64:
$ md build
$ cd build
$ cmake … -GNinja -DCMAKE_BUILD_TYPE=Debug ^
-DCMAKE_INSTALL_PREFIX=“E:/install/vlc-qt/msvc64” ^
-DLIBVLC_LIBRARY=“E:/vlc/win64/sdk/lib/libvlc.lib” ^
-DLIBVLCCORE_LIBRARY=“E:/vlc/win64/sdk/lib/libvlccore.lib” ^
-DLIBVLC_INCLUDE_DIR=“E:/vlc/win64/sdk/include”
$ ninja
$ ninja install
笔者环境
笔者编译完的路径在/usr/local下,其中/usr/local/include下面是头文件,/usr/local/lib下面是库文件, /usr/local/qml是qml插件路径
VlcCommon::setPluginPath("/usr/lib/vlc/plugins");
VlcQmlVideoPlayer::registerPlugin();
代码解释
程序中需要注意的是,有两句代码
**VlcCommon::setPluginPath("C:/Qt/Qt5.14.2/5.14.2/mingw73_32/bin/plugins"); //插件路径设置
VlcQmlVideoPlayer::registerPlugin(); //注册插件**
资料
所有用到的源码和库已上传
https://download.csdn.net/download/u011942101/15781750