概述
在使用QT开发基于VLC或者Ffmpeg库的播放器播放本地视频或者RTSP流时需要获取VLC或者FFPEG库,对于有一定技术能力的可以通过编译源码获得,当然也可以通过下载官方编译好的库文件。
VLC官方库下载
VLC 64bit库文件:
VLC编译好的库文件、头文件等,可以用于自己开发基于VLC库的程序,比如QT使用此库进行播放器开发等。
下载地址:
官网:http://download.videolan.org/pub/videolan/vlc/3.0.8/win64/vlc-3.0.8-win64.7z
清华映像:https://mirrors.tuna.tsinghua.edu.cn/videolan-ftp/vlc/3.0.8/win64/vlc-3.0.8-win64.7z
FFMPEG官方库下载
下载地址:https://www.gyan.dev/ffmpeg/builds/#release-builds
下载文件:ffmpeg-release-full-shared.7z
后缀带shared的压缩包是包含库文件的,可以用于QT等的程序开发
测试
QT工程中pro文件中添加如下代码链接库以及头文件:
c
# VLC-QT library
LIBS += -L$$PWD/lib/VLC-3.0.8/lib -lvlc -lvlccore
INCLUDEPATH += $$PWD/lib/VLC-3.0.8/include
DEPENDPATH += $$PWD/lib/VLC-3.0.8/include
# FFMPEG-QT library
LIBS += -L$$PWD/lib/FFMPEG-QT/lib -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswresample -lswscale
INCLUDEPATH += $$PWD/lib/FFMPEG-QT/include
DEPENDPATH += $$PWD/lib/FFMPEG-QT/include
在代码中添加如下代码:
c
unsigned version = avcodec_version();
qDebug()<<"ffmpeg version:"<< version;
const char * vlc_version = libvlc_get_version();
qDebug() << QString(vlc_version) << QString(QLatin1String(vlc_version)) << QString::fromLocal8Bit(vlc_version);
打印如下:
c
ffmpeg version: 3940198
"3.0.8 Vetinari" "3.0.8 Vetinari" "3.0.8 Vetinari"
如此代表库调用成功。