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"

如此代表库调用成功。

相关推荐
喵星人工作室13 小时前
C++火影忍者1.1.2
开发语言·c++
basketball61613 小时前
C++ 中的 ptrdiff_t 详解
开发语言·c++
月亮邮递员61613 小时前
Markdown语法总结
开发语言·前端·javascript
printfLILEI13 小时前
php中的类与对象以及反序列化
linux·开发语言·php
曹牧13 小时前
C#:主线程能够捕获到子线程中的异常
开发语言·数据库·c#
代码中介商13 小时前
深入解析STL中的stack、queue与priority_queue
开发语言·c++
彦为君13 小时前
JavaSE-07-异常机制
java·开发语言·后端·python·spring
OxyTheCrack14 小时前
【Golang】简述make与new内置函数以及两者的区别
开发语言·golang
Rain50914 小时前
mini-cc 的 MCP 协议:给 AI 装个 USB-C 接口
c语言·开发语言·前端·人工智能·架构·node.js·ai编程
华科大胡子14 小时前
AI开发者的网络卡点:Anthropic连接超时
开发语言·php