利用ffmpeg源码安装+vscode开发环境搭建详解

简介: 利用ffmpeg源码安装+vscode开发环境搭建详解

前言:

3ee1de6dedad4db2bde1ae84cf307076.png

大家好,今天给大家分享一篇ffmpeg开发环境的搭建,我在很早之前也给搭建过ffmpeg源码的安装,但是并没有给大家去搭建开发环境,而且当时的版本也比较老,很多细节问题没有给大家展示如何解决!

今天就给大家展示详细的ffmpeg最新5.1版本源码安装步骤和vscode开发环境搭建!技术的更新迭代,我们也要跟上技术的发展,所以这次用最新的版本来做开发环境!

如果大家需要进行交叉编译的话,可以参考之前移植rv1126上的教程!

ok,开始正式的分享,这里建议在ubuntu18上安装环境!


一、编译安装需要的开源编码格式:


首先在编译安装这些开源编码格式之前,我们要明白为啥需要他们:

  • aac
  • x264
  • x265

为啥需要呢?如果你对ffmpeg稍微了解的话,ffmpeg本身是一个框架,自身默认并没有支持这三种编码格式,所以需要我们手动添加来支持!

ok,明白了这个之后,我们开始来下载这三个开源编码格式源码包:


1、编译aac:

aac下载链接:

wget https://sourceforge.net/projects/opencore-amr/files/fdk-aac/fdk-aac-2.0.2.tar.gz


2e9ae7a88ebab46c8e5d7c26cedd6668.png

开始编译:

- 1、./configure --prefix=/usr/local/ffmpeg/ --enable-shared
- 2、make -j8 && make install


这里我把编译出来的东西都放在/usr/local/ffmpeg/,而且这里只编译动态库出来;大家按照上面两个步骤操作就行:

1bb3297eef5295974fcef25dad54e4ab.png

fec573ee3d69db9e2fc3e479627b6f2b.png

最终编译出来的动态库,就放在/usr/local/ffmpeg/lib下面,头文件在/usr/local/include下面:

7e6cef459b5b956fb78a571b2fd82480.png


2、 编译x264:

x264下载链接:

wget http://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20191024-2245-stable.tar.bz2

95dea5e33b3369d4ef7b62b13262ffc6.png

开始编译:

1、./configure  --prefix=/usr/local/ffmpeg --enable-static --enable-pic
2、 make -j8 && make install


这里把编译出来的东西同样放在路径/usr/local/ffmpeg,而且编译的是静态库:

f488e51af448f0b2ef9a2fcc46b44b0b.png

注意:这里你第一次安装的话,会报错nasm版本过低,这个时候你要重新下载nasm源码安装编译:

2e0bf1bd5efb082e384c86614668ff33.png

这里我给大家nasm的安装步骤;首先是nasm的下载链接:

wget https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.bz2


编译步骤:

1、./configure
2、make -j8 && make install


ok,这个操作就比较简单,你按照这个操作就行;第一次安装x264的话,通过重新安装nasm,是可以解决报错的,然后我们接着来安装x264:

db1fbf7503bf127699e9e16be11eae40.png

最后生成的头文件和静态库,也是放在/usr/local/ffmpeg路径下:

3bb233597378d2f9c4c1a3a39d0981e2.png

3、编译x265:

x265下载链接:

1. wget http://ftp.videolan.org/pub/videolan/x265/x265_3.2.tar.gz
2.


3b663c10051e53936122a133901dfc7f.png

编译步骤:

1、cd x265_3.2/build/linux/
2、 ./make-Makefiles.bash
3、 make -j8 && make install


e8ffe3d409fe0a77299a39a2b5a5fa06.png

ba76ec40d83da8cc430acfb91a869c36.png

d9e2e343944de33a6b1c27865b18ecfa.png

我们可以看到,x265编译出来的库和头文件分别放在/usr/local/lib和/usr/local/include路径下!


二、最新ffmpeg源码编译安装:


这里我们用gitte上的源码,github上的下载会有点慢:

git clone https://gitee.com/mirrors/ffmpeg/


我们下载下来,并切换分支到5.1版本:

git checkout -b remotes/origin/release/5.1


fe773f948bbac31fe645a4e19798d22a.png

0537dd09ef26f9eb8f20950b6d4f0a2d.png

然后开始编译:

1、./configure --prefix=/usr/local/ffmpeg --enable-gpl --enable-shared --enable-version3 --enable-nonfree --enable-pthreads --enable-libx264 --enable-libx265 --enable-libfdk-aac
2、make -j8 && make install


第一步这里,我们就是手动把aac、x264、x265编码格式给强制打开,这里也提一下其他enable的作用:

  • --enable-pthreads:启用pthreads(多线程)(默认关闭,可能会有线程安全问题)
  • --enable-gpl:允许使用GPL(默认关闭)
  • --enable-shared :构建共享库(默认关闭)
  • --enable-version3:升级GPL到版本3(默认:关闭)
  • --enable-nonfree:允许使用非免费的代码, 产生的库和二进制程序将是不可再发行的
  • --prefix=/usr/local/ffmpeg:把ffmpeg编译出来的东西都放在这个路径下去

b487987a8fff9bb1d729597b3779ee25.png

我们发现找不到libfdk_aac,那怎么解决呢,问题出在找不到它路径,所以我们配置一下环境变量:

vi ~/.bashrc


添加下面这条语句:

6c2d2b3df29b7667abc960bc44a8992a.png

export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/ffmpeg/lib/pkgconfig"

然后退出,执行一下source ~/.bashrc使其生效。为什么我们这里要这样操作,这里主要通过下面这个里面fdk-aac.pc这个文件去定位fdk-aac:

b5c4036267ccb702403c57d9c0d5658e.png

这个时候再执行刚才的那个配置,就可以解决这个问题,如果后期遇到类似的问题,都可以参考这种方法去解决,核心是要找到你编译出来的.pc后缀对应的文件就行:

d8c80d5d675bd3479594be8af4d862af.png

接着下面继续编译,这个过程比较久,我只给大家展示make install这部分:

f430073a5c264b34de25901435b0551b.png

最后我们可以在/usr/local/ffmpeg/lib路径下看到生成的库:

aaf8a80252c602b2ca8ec97316172a07.png

可执行程序和头文件:

55981fe425ea3fe38e0913ca9fb4c47b.png

这里也配置一下环境变量:

export PATH="$PATH:/usr/local/ffmpeg/bin"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/ffmpeg/lib"

4d33fe0c252a4e9d03346dda378f95a9.png

这个时候,我就可以在任何终端路径查看ffmpeg的版本了:

cdd1509ef2a2a209addfba90ede49a8a.png


三、利用vscode搭建ffmpeg开发环境搭建:


先去vscode官网下载vscode:

https://code.visualstudio.com/


下载下面这个版本,因为我现在的环境是ubuntu18:

54a0f4eaf6a3fb146ac0d530427eb612.png

然后直接点击下载好的包,就可以安装vscode了:

2a895160373dc6abfff5c2ce4ae4a42e.png

59a56dbb796d58115f2c8790caea2c39.png

最后就可以看到安装好的vscode:

ac1e87a6495d748d82fab889a9233f29.png

现在我们来建立一个heh.c的工程,同时先安装一下c/c++和gdb插件:

8946c2aeccc42b5781f8dac140254bb9.png

23de5262ce8d1b6792b7b749c770c040.png

f8f0d609a214c7b973b825bd0953906f.png

终端编译:

gcc heh.c -lavutil -lavformat


目录
相关文章
|
6月前
|
Linux Python
Linux Debian12使用VSCode和Python搭建flask开发环境
本文主要介绍了Linux Debian12使用VSCode和Python搭建flask开发环境的方法,并结合一个基础flask网页例子,测试是否运行正常。
154 2
Linux Debian12使用VSCode和Python搭建flask开发环境
|
3月前
|
Rust Shell 开发者
7步开始rust(自定义环境安装与vscode开发环境配置)
本文档详细记录了当改变Rust安装路径至特定目录(如 `/home/local_rust`)时,如何在VSCode环境中正确配置Rust开发环境的过程。主要包括:设置环境变量、使用清华大学镜像安装Rust及更新镜像源、手动部署 `rust-analyzer`、安装标准库源码、安装与配置VSCode插件等七个步骤,确保开发者能够顺利搭建并使用定制化的Rust开发环境。
500 0
|
4月前
|
JavaScript IDE 开发工具
vue3【2024版】开发环境搭建(含官网和nvm下载切换最新版node,修改node下载源,创建项目,启动项目,安装vscode插件Vue - Official)
vue3【2024版】开发环境搭建(含官网和nvm下载切换最新版node,修改node下载源,创建项目,启动项目,安装vscode插件Vue - Official)
264 3
|
4月前
|
JavaScript 前端开发 关系型数据库
入职必会-开发环境搭建28-VSCode下载和安装
Visual Studio Code(简称 VS Code)是由微软开发的免费开源代码编辑器,支持几乎所有主流操作系统,包括 Windows、macOS 和 Linux。它具有丰富的功能和扩展性,适用于各种编程语言和应用场景。
|
5月前
|
JavaScript C++ 应用服务中间件
vs code 搭建 vue 开发环境
vs code 搭建 vue 开发环境
45 4
|
5月前
|
IDE 开发工具
一文搞懂:【Haxe】(一)VSCode搭建Haxe开发环境
一文搞懂:【Haxe】(一)VSCode搭建Haxe开发环境
55 0
|
5月前
|
NoSQL C语言 C++
C语言开发环境搭建,使用vscode运行hello,world
C语言开发环境搭建,使用vscode运行hello,world
119 0
|
6月前
|
JavaScript 搜索推荐 Java
vscode打造舒适的python开发环境
_shigen_ 是一位专注于Java、Python、Vue和Shell等技术的博主,分享成长与认知。本文旨在记录配置Mac Python开发环境的过程,以优化使用体验和效率。内容包括:检查与验证Python版本,设置pip的阿里云镜像源以加速下载,以及VSCode的个性化配置,如选用美观的等宽字体和安装Python、isort(导入排序)及autopep8(代码格式化)插件。通过这些步骤,读者可复刻作者的高效开发环境。关注_shigen_ ,每天学习新知识!
83 0
vscode打造舒适的python开发环境
|
6月前
|
Linux API C语言
FFmpeg开发笔记(一)搭建Linux系统的开发环境
本文指导初学者如何在Linux上搭建FFmpeg开发环境。首先,由于FFmpeg依赖第三方库,可以免去编译源码的复杂过程,直接安装预编译的FFmpeg动态库。推荐网站<https://github.com/BtbN/FFmpeg-Builds/releases>提供适用于不同系统的FFmpeg包。但在安装前,需确保系统有不低于2.22版本的glibc库。详细步骤包括下载glibc-2.23源码,配置、编译和安装。接着,下载Linux版FFmpeg安装包,解压至/usr/local/ffmpeg,并设置环境变量。最后编写和编译简单的C或C++测试程序验证FFmpeg环境是否正确配置。
180 8
FFmpeg开发笔记(一)搭建Linux系统的开发环境
|
6月前
|
Linux 编译器 C语言
FFmpeg开发笔记(二)搭建Windows系统的开发环境
在Windows上学习FFmpeg通常较困难,但通过安装预编译的FFmpeg开发包可以简化流程。首先需要安装MSYS2来模拟Linux环境。下载并执行MSYS2安装包,然后修改msys2_shell.cmd以继承Windows的Path变量。使用pacman安装必要的编译工具。接着,下载预编译的FFmpeg Windows包,解压并配置系统Path。最后,在MSYS2环境中运行`ffmpeg -version`确认安装成功。欲深入学习FFmpeg开发,推荐阅读《FFmpeg开发实战:从零基础到短视频上线》。
107 4
FFmpeg开发笔记(二)搭建Windows系统的开发环境