QT使用官方VLC以及Ffmpeg库的方法

概述

在使用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"

如此代表库调用成功。

相关推荐
2601_962885726 小时前
如何用 Python 自动识别股票的支撑位与压力位?
开发语言·python
爱吃奥利奥_wen7 小时前
面向对象三板斧:封装、继承、多态,到底在“装“什么、“承“什么、“变“什么?
开发语言·经验分享·c#
我可能是个假开发7 小时前
FTP Unicode 文件名导致 `550` 的问题分析与解决方案
java·开发语言·spring
WL学习笔记8 小时前
日期类(C++)
开发语言·c++·日期类实现
谢亮_vipxieliang9 小时前
Go map与结构体的正确使用
开发语言·golang·哈希算法
H.莓飛9 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
xxwl5859 小时前
数据结构知识点和代码实现总结(C语言实现)
c语言·开发语言·数据结构
可乐鸡翅yeah_10 小时前
业务中 M3U8 水印相关坑,硬水印和动态水印区别
前端·网络·数据库·ffmpeg·m3u8在线
code2cat12 小时前
Java进阶篇之AtomicMarkableReference:引用还在,标记已经改变
java·开发语言·cas·并发编程·逻辑删除
CappuccinoRose12 小时前
FormData数据处理
开发语言·前端·javascript·表单数据