LINUX FFMPEG编译详细过程记录(最全)

简介: LINUX FFMPEG编译详细过程记录(最全)
  • 前言

 凡是用到视频音频的地方,都用到ffmpeg。根据用到的CODEC不同,编译有很大差异。吾有两个初等、中午编译的博文,这个是全编译博文。


 全编译有什么好处?把库打包之后,可以直接在别的机器上使用。


 备份建议:编译后把整个编译目录打包备份;使用虚拟机编译,然后备份。


  • 准备工作
apt update
apt install gcc make cmake
apt install autoconf subversion git wget g++ pkg-config 
# libtool libtool libogg-devel nasm
apt install autopoint
  • 下载编译libtool

https://blog.csdn.net/quantum7/article/details/104086313

  • 下载编译OpenAL

https://blog.csdn.net/quantum7/article/details/104136755

  • 下载编译openh264

https://blog.csdn.net/quantum7/article/details/104087760

  • 下载编译x264

https://blog.csdn.net/quantum7/article/details/104087603

  • 下载编译x265

https://blog.csdn.net/quantum7/article/details/104040399

  • 下载编译iLBC

https://blog.csdn.net/quantum7/article/details/104087424

  • 下载编译g729

https://blog.csdn.net/quantum7/article/details/104087356

  • 下载编译libgsm

https://blog.csdn.net/quantum7/article/details/104087285

  • 下载编译opencore-amr

https://blog.csdn.net/quantum7/article/details/104087232

  • 下载编译vo-amrwbenc

https://blog.csdn.net/quantum7/article/details/104087266

  • 下载编译libopus

https://blog.csdn.net/quantum7/article/details/104087104

  • 下载编译libyuv

https://blog.csdn.net/quantum7/article/details/104086985

  • 下载编译libvpx

https://blog.csdn.net/quantum7/article/details/104086885

  • 载编译Which

https://blog.csdn.net/quantum7/article/details/104086868

  • 下载编译YASM

https://blog.csdn.net/quantum7/article/details/104086713

  • (字体相关)下载编译libfreetype

https://blog.csdn.net/quantum7/article/details/102716352

  • (字体相关)下载编译FriBidi

https://blog.csdn.net/quantum7/article/details/104136580

  • (字体相关)下载编译libxml2

https://blog.csdn.net/quantum7/article/details/104484634

  • (字体相关)下载编译gperf

https://blog.csdn.net/quantum7/article/details/104485237

  • (字体相关)下载编译fontconfig

https://blog.csdn.net/quantum7/article/details/104484257

  • (字体相关)下载libass

https://blog.csdn.net/quantum7/article/details/104136630

  • 下载编译faac

https://blog.csdn.net/quantum7/article/details/104136411

  • 下载编译zlib

https://blog.csdn.net/quantum7/article/details/104486417

  • 下载编译libpng

https://blog.csdn.net/quantum7/article/details/104173294

  • 下载编译jpeglib

https://blog.csdn.net/quantum7/article/details/82459960

  • 下载编译SDL2

https://blog.csdn.net/quantum7/article/details/104173159

  • 下载编译vorbis

https://blog.csdn.net/quantum7/article/details/104135601

  • 下载编译libogg

https://blog.csdn.net/quantum7/article/details/104086366

  • 下载编译theora

https://blog.csdn.net/quantum7/article/details/104135650

  • 下载编译libspeex/libspeexdsp

https://blog.csdn.net/quantum7/article/details/104086849

  • 下载编译nasm

https://blog.csdn.net/quantum7/article/details/104086464

  • 下载编译lame

https://blog.csdn.net/quantum7/article/details/104178587

  • 下载编译ffmpeg

http://ffmpeg.org/download.html

BUILD_LIBS=${HOME}/build_libs
./configure \
    --prefix=${BUILD_LIBS}  \
    --extra-cflags="-fPIC" \
    --extra-cflags="-I${BUILD_LIBS}/include" \
    --extra-ldflags="-L${BUILD_LIBS}/lib" \
    --bindir="${BUILD_LIBS}/bin" \
    --enable-pic --enable-pthreads \
    --enable-shared --disable-static \
    --disable-network --enable-pthreads \
    --disable-ffmpeg --disable-ffplay --disable-ffprobe \
    --enable-gpl --enable-nonfree \
    --enable-libx264 --enable-encoder=libx264 --enable-decoder=h264 \
    --disable-debug
# ./configure --pkg-config-flags="--static" --bindir="$HOME/bin" --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree
# --enable-memalign-hack
# --disable-ffserver
make
make install
cp libavfilter/motion_estimation.h ${BUILD_LIBS}/include/libavfilter
目录
相关文章
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
728 2
|
9月前
|
Ubuntu Linux PHP
利用PHP压缩音频:Linux环境下的ffmpeg简易安装指南
希望这个指南能为你的编程之旅提供帮助。只需记住,每一行代码都像音乐的音符,组合在一起,创造出美妙的旋律。祝你编程愉快!
308 6
|
12月前
|
Ubuntu 开发工具 git
Ubuntu编译ffmpeg解决错误:ERROR: avisynth/avisynth_c.h not found
通过本文的详细指导,您可以顺利地在Ubuntu系统上配置和编译FFmpeg,并解决Avisynth头文件缺失的问题。
535 27
|
Ubuntu Linux Go
golang编译成Linux可运行文件
本文介绍了如何在 Linux 上编译和运行 Golang 程序,涵盖了本地编译和交叉编译的步骤。通过这些步骤,您可以轻松地将 Golang 程序编译成适合 Linux 平台的可执行文件,并在目标服务器上运行。掌握这些技巧,可以提高开发和部署 Golang 应用的效率。
2236 14
|
缓存 并行计算 Ubuntu
Jetson 学习笔记(十一):jetson agx xavier 源码编译ffmpeg(3.4.1)和opencv(3.4.0)
本文是关于在Jetson AGX Xavier上编译FFmpeg(3.4.1)和OpenCV(3.4.0)的详细教程,包括编译需求、步骤、测试和可能遇到的问题及其解决方案。还提供了Jetson AGX Xavier编译CUDA版本的OpenCV 4.5.0的相关信息。
502 4
Jetson 学习笔记(十一):jetson agx xavier 源码编译ffmpeg(3.4.1)和opencv(3.4.0)
|
Ubuntu 应用服务中间件 nginx
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
本文是关于Ubuntu系统中使用ffmpeg 3.2.16源码编译OpenCV 3.4.0的安装笔记,包括安装ffmpeg、编译OpenCV、卸载OpenCV以及常见报错处理。
983 2
Ubuntu安装笔记(三):ffmpeg(3.2.16)源码编译opencv(3.4.0)
|
Linux API 开发工具
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是由B站研发的移动端播放器,基于FFmpeg 3.4,支持Android和iOS。其源码托管于GitHub,截至2024年9月15日,获得了3.24万星标和0.81万分支,尽管已停止更新6年。本文档介绍了如何在Linux环境下编译ijkplayer的so库,以便在较新的开发环境中使用。首先需安装编译工具并调整/tmp分区大小,接着下载并安装Android SDK和NDK,最后下载ijkplayer源码并编译。详细步骤包括环境准备、工具安装及库编译等。更多FFmpeg开发知识可参考相关书籍。
551 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
|
Linux 编译器 C语言
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
331 2
|
Linux 编译器 C语言
Linux c/c++之多文档编译
这篇文章介绍了在Linux操作系统下使用gcc编译器进行C/C++多文件编译的方法和步骤。
198 0
Linux c/c++之多文档编译
|
Linux
Linux - 如何编译源码安装软件
源码编译安装通常包括三个步骤:1) `./configure` 检测平台特征和依赖项,生成 Makefile;2) `make` 编译源码,生成可执行文件;3) `make install` 将可执行文件安装到指定目录并配置环境变量。
434 0

热门文章

最新文章