当前位置: 首页 > article >正文

ffmpeg自动手动编译安装

1.下载linux ndk并配置profile文件

本例以android-ndk-r10e为例
vi /etc/profile

export NDK_HOME=/root/ffmpeg/android-ndk-r10e
export PATH= P A T H : PATH: PATH:NDK_HOME

source /etc/profile

2.下载x264并生成

git clone https://code.videolan.org/videolan/x264.git
cd x264/
./configure --prefix=/root/ffmpeg/outputx264 --enable-shared --enable-static --disable-asm
make
make install

3.下载fdk-aac并生成

git clone --depth 1 https://gitee.com/mirrors/fdk-aac.git
cd fdk-aac/
./autogen.sh
sudo apt-get install autoconf
sudo apt-get install automake
sudo apt-get install libtool
./autogen.sh
./configure --enable-shared --prefix=/root/ffmpeg/outputfdk
make
make install

4.下载lame并生成

wget http://downloads.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz
tar zxvf lame-3.100.tar.gz
cd lame-3.100/
./configure --enable-shared --enable-static --prefix=/root/ffmpeg/outputlame
make
make install

5.最后编译ffmpg

root@ubuntu2004:~/ffmpeg/FFmpeg-release-2.7# cat build_ffmpeg.sh
#!/bin/bash

NDK=/root/ffmpeg/android-ndk-r10e

PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt

PLATFORM=$NDK/platforms/android-15/arch-arm

PREFIX=/root/ffmpeg/outputffmpeg

./configure --prefix= P R E F I X   − − s y s r o o t = PREFIX \ --sysroot= PREFIX sysroot=PLATFORM
–cross-prefix=$PREBUILT/linux-x86_64/bin/arm-linux-androideabi-
–target-os=android --arch=arm
–extra-cflags=“-I/root/ffmpeg/outputx264/include -I/root/ffmpeg/outputlame/include -I/root/ffmpeg/outputfdk/include -fPIC "
–extra-ldflags=”-L/root/ffmpeg/outputx264/lib -L/root/ffmpeg/outputlame/lib -L/root/ffmpeg/outputfdk/lib"
–disable-programs
–disable-doc
–enable-shared
–enable-cross-compile
–enable-gpl
–enable-avresample
–enable-nonfree

6. 目录结构图

在这里插入图片描述


http://www.kler.cn/a/395421.html

相关文章:

  • nVisual自定义工单内容
  • 使用API有效率地管理Dynadot域名,编辑账户中whois联系人信息
  • 鸿蒙HarmonyOS 地图不显示解决方案
  • 微服务(二)
  • WebSocket和HTTP协议的性能比较与选择
  • 软件工程概论项目(二),node.js的配置,npm的使用与vue的安装
  • 如何查看库函数的描述、定义以及所需要的头文件
  • OpenAI模型whisper 音频转文本
  • Cloudflare代理后的https连接的建立还是从源客户端到服务器端握手协商的连接吗
  • 【C++】深入理解自定义 list 容器中的 list_iterator:迭代器实现详解
  • 低成本出租屋5G CPE解决方案:ZX7981PG/ZX7981PM WIFI6千兆高速网络
  • Git分支详解
  • vue3 + naive ui card header 和 title 冲突 bug
  • [DB]
  • 学习笔记——PLCT汪辰:开发RISC-V上的操作系统(持续更新)
  • Linux内存管理(七十三):Linux PSI 详解(3)
  • 测试实项中的偶必现难测bug--互斥逻辑异常
  • 云服务器和物理服务器的区别有哪些?
  • 利用分部类扩展字符串函数StringExtensions
  • 保姆级教程!!教你通过【Pycharm远程】连接服务器运行项目代码
  • ubontu为其他用户分配账号并设置ssh登陆方式
  • Docker部署Redis哨兵
  • 深度学习和图像处理
  • 使用 AMD GPU 上的 Whisper 进行语音转文字
  • Docker的基本概念、安装步骤以及一些简单的用法
  • kubernetes部署dashboard