0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ubuntu20.04 ffmpeg开发环境搭建

我快闭嘴 来源:嵌入式开发AIoT 作者:Kyrie Guo 2022-09-13 10:51 次阅读

创建目录

  • 在home目录下创建
  • ffmpeg_sources:用于下载源文件
  • ffmpeg_build:存储编译后的库文件
  • bin:存储二进制文件(ffmpeg,ffplay,ffprobe,X264,X265等)
cd~
mkdirffmpeg_sourcesffmpeg_buildbin

安装依赖

更新

sudoapt-getupdate

安装需要的组件

sudoapt-get-yinstall
autoconf
automake
build-essential
cmake
git-core
libass-dev
libfreetype6-dev
libsdl2-dev
libtool
libva-dev
libvdpau-dev
libvorbis-dev
libxcb1-dev
libxcb-shm0-dev
libxcb-xfixes0-dev
pkg-config
texinfo
wget
zlib1g-dev

编译与安装

  • 如果要在多核系统中加快编译速度,可以在每个make命令(例如make -j4)中使用-j选项。建议都使用源码进行安装。
cd~/ffmpeg_sources&&
wgethttps://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.bz2&&
tarxjvfnasm-2.14.02.tar.bz2&&
cdnasm-2.14.02&&
./autogen.sh&&
PATH="$HOME/bin:$PATH"./configure--prefix="$HOME/ffmpeg_build"--bindir="$HOME/bin"&&
make&&
makeinstall

NASM

  • 部分库使用到汇编程序
  • 使用源码进行安装
cd~/ffmpeg_sources&&
wgethttps://www.nasm.us/pub/nasm/releasebuilds/2.14.02/nasm-2.14.02.tar.bz2&&
tarxjvfnasm-2.14.02.tar.bz2&&
cdnasm-2.14.02&&
./autogen.sh&&
PATH="$HOME/bin:$PATH"./configure--prefix="$HOME/ffmpeg_build"--bindir="$HOME/bin"&&
make&&
makeinstall

Yasm

  • 部分库使用到汇编程序
  • 使用源码进行安装
cd~/ffmpeg_sources&&
wget-Oyasm-1.3.0.tar.gzhttps://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz&&
tarxzvfyasm-1.3.0.tar.gz&&
cdyasm-1.3.0&&
./configure--prefix="$HOME/ffmpeg_build"--bindir="$HOME/bin"&&
make&&
makeinstall

lib264

  • H.264视频编码器。更多信息和使用范例参考H.264 Encoding Guide.
  • 要求编译ffmpeg时配置:--enable-gpl --enable-libx264.
  • 使用源码进行编译
cd~/ffmpeg_sources&&
git-Cx264pull2>/dev/null||gitclone--depth1https://gitee.com/mirrors_addons/x264.git&&
cdx264&&
PATH="$HOME/bin:$PATH"PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"./configure--prefix="$HOME/ffmpeg_build"--bindir="$HOME/bin"--enable-static--enable-pic&&
PATH="$HOME/bin:$PATH"make&&
makeinstall

libx265

  • H.265/HEVC 视频编码器, 更多信息和使用范例参考H.265 Encoding Guide.
  • 要求编译ffmpeg时配置:--enable-gpl --enable-libx265.
sudoapt-getinstallmercuriallibnuma-dev&&
cd~/ffmpeg_sources&&

ifcdx2652>/dev/null;thengitpull&&cd..;elsegitclonehttps://gitee.com/mirrors_videolan/x265.git;fi&&
cdx265/build/linux&&
PATH="$HOME/bin:$PATH"cmake-G"UnixMakefiles"-DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build"-DENABLE_SHARED=off../../source&&
PATH="$HOME/bin:$PATH"make&&
makeinstall

libvpx

  • VP8/VP9视频编解码器。更多信息和使用范例参考VP9 Video Encoding Guide.
  • 要求编译ffmpeg时配置:--enable-libvpx.
cd~/ffmpeg_sources&&
git-Clibvpxpull2>/dev/null||gitclone--depth1https://github.com/webmproject/libvpx.git&&
cdlibvpx&&
PATH="$HOME/bin:$PATH"./configure--prefix="$HOME/ffmpeg_build"--disable-examples--disable-unit-tests--enable-vp9-highbitdepth--as=yasm--enable-pic&&
PATH="$HOME/bin:$PATH"make&&
makeinstall

libfdk-aac

  • AAC音频编码器. 更多信息和使用范例参考AAC Audio Encoding Guide
  • 要求编译ffmpeg时配置:--enable-libfdk-aac (如果你已经配置了 --enable-gpl则需要加上--enable-nonfree).
cd~/ffmpeg_sources&&
git-Cfdk-aacpull2>/dev/null||gitclone--depth1https://github.com/mstorsjo/fdk-aac&&
cdfdk-aac&&
autoreconf-fiv&&
./configureCFLAGS=-fPIC--prefix="$HOME/ffmpeg_build"&&
make&&
makeinstall

libmp3lame

cd~/ffmpeg_sources&&
git-Copuspull2>/dev/null||gitclone--depth1https://github.com/xiph/opus.git&&
cdopus&&
./autogen.sh&&
./configure--prefix="$HOME/ffmpeg_build"-with-pic&&
make&&
makeinstall

FFmpeg

cd~/ffmpeg_sources&&
wget-Offmpeg-4.2.1.tar.bz2https://ffmpeg.org/releases/ffmpeg-4.2.1.tar.bz2&&
tarxjvfffmpeg-4.2.1.tar.bz2&&
cdffmpeg-4.2.1&&
PATH="$HOME/bin:$PATH"PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"CFLAGS="-O3-fPIC"./configure
--prefix="$HOME/ffmpeg_build"
--pkg-config-flags="--static"
--extra-cflags="-I$HOME/ffmpeg_build/include"
--extra-ldflags="-L$HOME/ffmpeg_build/lib"
--extra-libs="-lpthread-lm"
--bindir="$HOME/bin"
--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&&
PATH="$HOME/bin:$PATH"make&&
makeinstall&&
hash-r
  • 最后,重新登录系统或者在当前shell会话执行如下命令以识别新安装ffmpeg的位置:source ~/.profile现在已经完成编译和安装ffmpeg (also ffplay, ffprobe, lame, x264, & x265) 。该文档剩余章节主要讲如何更新和删除ffmepg。
  • 编译完成后,ffmpeg_build ffmpeg_sources bin目录的大体情况。
ffmpeg_build:

996b92d2-32a1-11ed-ba43-dac502259ad0.png

ffmpeg_sources:

99855c58-32a1-11ed-ba43-dac502259ad0.png

bin:

999f027a-32a1-11ed-ba43-dac502259ad0.png

审核编辑:汤梓红


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Ubuntu
    +关注

    关注

    5

    文章

    560

    浏览量

    29569
  • 开发环境
    +关注

    关注

    1

    文章

    222

    浏览量

    16586
  • ffmpeg
    +关注

    关注

    0

    文章

    46

    浏览量

    7379

原文标题:开发环境搭建 | ubuntu20.04 ffmpeg

文章出处:【微信号:嵌入式开发AIoT,微信公众号:嵌入式开发AIoT】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【昉·星光 2 高性能RISC-V单板计算机体验】+搭建编译环境编译

    搭建编译环境建议选择其推荐的,我尝试了ubuntu16.04,发现编译不过去,然后我又换了Ubuntu20.04发现其是可以的。
    的头像 发表于 07-17 10:47 892次阅读
    【昉·星光 2 高性能RISC-V单板计算机体验】+<b class='flag-5'>搭建</b>编译<b class='flag-5'>环境</b>编译

    Windows下基于MSVC搭建ffmpeg开发环境

    Windows下基于MSVC搭建ffmpeg开发环境
    的头像 发表于 06-08 10:27 1846次阅读
    Windows下基于MSVC<b class='flag-5'>搭建</b><b class='flag-5'>ffmpeg</b><b class='flag-5'>开发</b><b class='flag-5'>环境</b>

    【HarmonyOS HiSpark AI Camera试用连载 】- 2 - Ubuntu 20.04环境搭建和注意事项

    了长时间熬夜研究,并本着发挥前人作用的本质,所以把我最近搭建环境的步骤和遇到的问题全部写出来,发挥前人作用避免后来人踩坑 !!!0.1 步骤首先我用的是一台笔记本加虚拟机运行 Ubuntu20.04
    发表于 11-02 00:40

    已经配置好鸿蒙开发环境ubuntu 20.04 镜像精华

    使用 ubuntu 20.04 版本。虽然环境搭建不难,但是初学者容易在这里踩坑,搭了半天都不行。为此,本文提供了已经配置好开发
    发表于 12-08 11:18

    怎样利用Ubuntu20.04去安装Mentor Calibre 2020?

    怎样利用Ubuntu20.04去安装Mentor Calibre 2020?有没有人遇到过这个问题啊
    发表于 06-23 07:19

    Ubuntu20.04系统中使用用STM32F2107RCT6点亮一个二极管灯

    Ubuntu20.04系统中使用用STM32F2107RCT6点亮一个二极管灯
    发表于 12-05 14:51 8次下载
    <b class='flag-5'>Ubuntu20.04</b>系统中使用用STM32F2107RCT6点亮一个二极管灯

    【开鸿智谷NiobeU4开发板免费试用体验】开鸿智谷NiobeU4环境搭建及编译下载测试

    系统的openharmony开发环境,弄了一周多编译还是有问题,总是从头再来一遍,总能够编译通过。这一篇就记录一下搭建标准系统过程及编译源码。 一. 下载Ubuntu20.04镜像用虚
    的头像 发表于 10-17 10:47 1203次阅读

    如何制作ubuntu20.04的文件系统

    firefly自带的文件系统,由于缺少一些基本功能模块,因此,我们可以自己手动制作一个ubuntu20.04的文件系统。
    的头像 发表于 10-17 12:12 3690次阅读

    【ROC-RK3568-PC开发板试用体验】Ubuntu20.04桌面系统体验升级与GCC安装

    本文来源电子发烧友社区,作者:李先生, 帖子地址: https://bbs.elecfans.com/jishu_2303743_1_1.html 本视频进行Ubuntu20.04桌面系统体验 并升级系统 安装GCC 体验视频详见作者原贴
    的头像 发表于 10-18 16:02 1515次阅读

    【ROC-RK3568-PC开发板试用体验】烧录Ubuntu20.04系统

    ://www.t-firefly.com/doc/download/107.html下 固件-Ubuntu 网盘下下载 Ubuntu/Ubuntu20.04/ROC-RK3568-PC-UBU
    的头像 发表于 10-19 10:08 5699次阅读
    【ROC-RK3568-PC<b class='flag-5'>开发</b>板试用体验】烧录<b class='flag-5'>Ubuntu20.04</b>系统

    【XR806开发板试用】通过http请求从心知天气网获取天气预报信息

    本次评测开发环境搭建在windows11的WSL2的Ubuntu20.04中,
    的头像 发表于 10-23 11:35 819次阅读
    【XR806<b class='flag-5'>开发</b>板试用】通过http请求从心知天气网获取天气预报信息

    ubuntu20.04安装教程

    Ubuntu 20.04 的安装步骤如下: 制作启动U盘。首先下载Ubuntu 20.04的镜像文件和UltraISO(镜像制作工具)。然后使用UltraISO打开下载的镜像文件,插入
    的头像 发表于 11-13 16:59 2078次阅读

    ubuntu20.04设置环境变量方法

    设置环境变量 输入下面的这行代码,注意到底是melodic还是noetic或者是kinetic是由你的ubuntu的版本决定的,比如我的ubuntu20.04版本的,对应的是noet
    的头像 发表于 12-01 16:34 1449次阅读
    <b class='flag-5'>ubuntu20.04</b>设置<b class='flag-5'>环境</b>变量方法

    Ubuntu 20.04如何更改用户名

    产品简介本文适用于所有RK3568/RK3588平台产品在Ubuntu20.04系统上如何更改用户名,本文以IDO-EVB3588开发板为例,在ubuntu20.04系统上修改用户名industio
    的头像 发表于 01-26 08:34 773次阅读
    <b class='flag-5'>Ubuntu</b> <b class='flag-5'>20.04</b>如何更改用户名

    【北京迅为】iTOP-LS2K0500开发板快速使用编译环境ubuntu20.04第一章加载迅为提供 Ubuntu20.04

    【北京迅为】iTOP-LS2K0500开发板快速使用编译环境ubuntu20.04第一章加载迅为提供 Ubuntu20.04
    的头像 发表于 09-18 16:43 403次阅读
    【北京迅为】iTOP-LS2K0500<b class='flag-5'>开发</b>板快速使用编译<b class='flag-5'>环境</b><b class='flag-5'>ubuntu20.04</b>第一章加载迅为提供 <b class='flag-5'>Ubuntu20.04</b>