FFmpeg 开发环境## 一、简介使用Qt和SDL在Ubuntu-22.04-LTS上构建FFmpeg开发环境。¶
2.应用- GNU海湾合作委员会- Qt- [FFmpeg][FFmpeg]- [SDL][SDL] 链接占位符0¶
3.安装### (0).预安装更新所有存储库。```¶
sudo apt update && apt upgrade
### (1).依赖关系Ubuntu 22.04.2 LTS 中已解决
关于使用[FFmpeg][FFmpeg]进行视频解码/编码 - x264 - libavcodec58 - libavcodec-extra58 - libavformat58 - libavformat-extra58 - libavutil56 - 库6 - libffms2-5 - libgpac11 - libswscale5 - libx264-163
- x265 - 库6 - libstdc++6 - libx265-199 - libx265-199
- libx264-dev - libx264-163
- libx265-dev - libx265-199
- libass-开发 - libass9 - libfontconfig1-dev - libfontconfig-dev - libfreetype-dev - libfribidi-dev - libharfbuzz-dev
- libfdk-aac-dev - libfdk-aac2 - pkg 配置 - 包配置:i386 - 软件包配置文件
- libfreetype-dev - 自由类型6 - libbrotli-dev - libc6-dev - libc 开发 - libc6-dev - zlib1g-dev - libz-dev - zlib1g-dev
- libmp3lame-dev - libmp3lame0
- libopus-dev - 利波普斯0
- libvorbis-dev - 利博格开发者 - libvorbis0a - libvorbisenc2 - libvorbisfile3
- libvpx-dev - 库vpx7
关于使用 [SDL2][SDL] 进行音频解码/编码: - libsdl2-dev - libasound2-dev - libdbus-1-dev - libdecor-0-dev - libdrm 开发 - libegl1-mesa-dev - libgbm 开发 - libgl 开发 - libgles-dev - libglu1-mesa-dev - libibus-1.0-dev - libpulse-dev - libsdl2-2.0-0 - libsndio-dev - libudev-dev - libwayland-dev - libx11-dev - libxcursor-dev - libxext-dev - libxfixes-dev - libxi-dev - libxinerama-dev - libxkbcommon-dev - libxrandr-dev - libxss-dev - libxt-dev - libxv-dev - libxxf86vm-dev - 库6 - libopengl0 - 库x11-6
关于配置 FFmpeg: - 亚斯姆 - 库6
使用以下命令安装所有依赖项:```
sudo apt install yasm gcc g++ cmake make \
x264 x265 libx264-dev libx265-dev \
libass-dev libfdk-aac-dev libvorbis-dev \
libfreetype-dev libmp3lame-dev libopus-dev \
libvpx-dev libsdl2-dev
(2).Qt使用Qt 在线安装程序安装 Qt。¶
最好使用中科大的镜子安装 Qt 。> 使用命令安装:
.\qt-unified-windows-x86-online.exe --mirror https://mirrors.ustc.edu.cn/qtproject> 不要使用sudo命令或用户ROOT安装 Qt。 如果您更喜欢 Qt 在线安装程序,则需要libxcb-xinerama.so.0。要安装此依赖项,请运行以下命令sudo apt install libxcb-xinerama0。 可以从源代码安装 Qt。跟随操作说明,脚本可用这里。
(3).FFmpeg从官方网站下载 FFmpeg,使用以下编译命令安装:¶
wget http://ffmpeg.org/releases/ffmpeg-4.2.9.tar.xz
tar -xvf ffmpeg-4.2.9.tar.xz
cd ffmpeg-4.2.9
sudo ./configure --enable-gpl --enable-libass --enable-libfdk-aac \
--enable-libfreetype --enable-libmp3lame --enable-libopus \
--enable-libvorbis --enable-libvpx --enable-libx264 \
--enable-libx265 --enable-pic --enable-shared --enable-nonfree \
--prefix=/usr/local/ffmpeg-4.2.9
make -j8
sudo make install
(4).SDL2SDL2 已随系统一起安装,安装依赖项时安装了标头。¶
4.环境安装脚本提供一键环境安装脚本:- 安装NV.sh - install_denendency.sh - 安装_ffmpeg.sh - 安装qt.sh¶
Qt Framework 将通过本地编译安装,并从中科大镜报下载开源代码。> Qt 将安装在路径:
/usr/local/qt-5.15.2
5.配置Qt项目- 将 FFmpeg 添加到 .pro 文件中的INCLUDEPATH中。¶
- 在[FFmpeg](https://ffmpeg.org/)的 .pro 文件中添加动态链接`-lavfilter -lavformat -lavdevice -lavcodec -lpostproc -lswscale -lavutil -lswresample `到`LIBS`;
- 为雪迪龙添加
-lSDL2main -lSDL2。
参考文献[1].https://qt.io¶
[2].http://mirrors.ustc.edu.cn/help/qtproject.html [3].http://ffmpeg.org [4].https://libsdl.org/ [5].https://blog.csdn.net/a1367666195/article/details/126055594 [6].https://askubuntu.com/questions/1298645/shared-library-not-found-for-pyqt5-libxcb-xinerama-so-0-not-found [7]. 从源安装 Qt [8]. VSCode-C-CPP-环境 [FFmpeg]:https://ffmpeg.org/[SDL]:https://www.libsdl.org/