linux 编译ffmpeg静态版本,FFmpeg-编译静态库(iOS)

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。

FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最早由Fabrice Bellard发起,2004年至2015年间由Michael Niedermayer主要负责维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward"。

使用Shell脚本语言编译音视频.a静态库

第一步:下载音视频框架

网上下载,非常简单

通过Shell脚本下载音视频框架

脚本代码

#!/bin/bash

#库名称

source="ffmpeg-3.4"

#下载这个库

if [ ! -r $source ]

then

#没有下载,那么执行下载操作

echo "没有FFmpeg库, 我们需要下载。。。。。。"

#下载

curl http://ffmpeg.org/releases/${source}.tar.bz2 | tar xj || exit 1

fi

'curl'命令:它可以通过http/ftp等这样的网络方式下载和上传文件(一个强大网络工具),

基本格式:curl 地址

${source}.tar.bz2:制定下载版本

tar:表示解压和压缩,语法:tar options,例如:tar xj (x表示解压文件选项,j表示需要解压bz2压缩包)

第二步:查看FFmpeg音视频编译配置选项

1、查看选项

进入FFmpeg框架包中

执行命令查看配置 ./configure --help

Help options:

--help print this message

--quiet Suppress showing informative output

--list-decoders show all available decoders

--list-encoders show all available encoders

--list-hwaccels show all available hardware accelerators

--list-demuxers show all available demuxers

--list-muxers show all available muxers

--list-parsers show all available parsers

--list-protocols show all available protocols

--list-bsfs show all available bitstream filters

--list-indevs show all available input devices

--list-outdevs show all available output devices

--list-filters show all available filters

Standard options:

--logfile=FILE log tests and output to FILE [ffbuild/config.log]

--disable-logging do not log configure debug information

--fatal-warnings fail if any configure warning is generated

--prefix=PREFIX install in PREFIX [/usr/local]

--bindir=DIR install binaries in DIR [PREFIX/bin]

--datadir=DIR install data files in DIR [PREFIX/share/ffmpeg]

--docdir=DIR install documentation in DIR [PREFIX/share/doc/ffmpeg]

--libdir=DIR install libs in DIR [PREFIX/lib]

--shlibdir=DIR install shared libs in DIR [LIBDIR]

--incdir=DIR install includes in DIR [PREFIX/include]

--mandir=DIR install man page in DIR [PREFIX/share/man]

--pkgconfigdir=DIR install pkg-config files in DIR [LIBDIR/pkgconfig]

--enable-rpath use rpath to allow installing libraries in paths

not part of the dynamic linker search path

use rpath when linking programs (USE WITH CARE)

--install-name-dir=DIR Darwin directory name for installed targets

Licensing options:

--enable-gpl allow use of GPL code, the resulting libs

and binaries will be under GPL [no]

--enable-version3 upgrade (L)GPL to version 3 [no]

--enable-nonfree allow use of nonfree code, the resulting libs

and binaries will be unredistributable [no]

Configuration options:

--disable-static do not build static libraries [no]

--enable-shared build shared libraries [no]

--enable-small optimize for size instead of speed

--disable-runtime-cpudetect disable detecting CPU capabilities at runtime (smaller binary)

--enable-gray enable full grayscale support (slower color)

--disable-swscale-alpha disable alpha channel support in swscale

--disable-all disable building components, libraries and programs

--disable-autodetect disable automatically detected external libraries [no]

Program options:

--disable-programs do not build command line programs

--disable-ffmpeg disable ffmpeg build

--disable-ffplay disable ffplay build

--disable-ffprobe disable ffprobe build

--disable-ffserver disable ffserver build

Documentation options:

--disable-doc do not build documentation

--disable-htmlpages do not build HTML documentation pages

--disable-manpages do not build man documentation pages

--disable-podpages do not build POD documentation pages

--disable-txtpages do not build text documentation pages

Component options:

--disable-avdevice disable libavdevice build

--disable-avcodec disable libavcodec build

--disable-avformat disable libavformat build

--disable-swresample disable libswresample build

--disable-swscale disable libswscale build

--disable-postproc disable libpostproc build

--disable-avfilter disable libavfilter build

--enable-avresample enable libavresample build [no]

--disable-pthreads disable pthreads [autodetect]

--disable-w32threads disable Win32 threads [autodetect]

--disable-os2threads disable OS/2 threads [autodetect]

--disable-network disable network support [no]

--disable-dct disable DCT code

--disable-dwt disable DWT code

--disable-error-resilience disable error resilience code

--disable-lsp disable LSP code

--disable-lzo disable LZO decoder code

--disable-mdct disable MDCT code

--disable-rdft disable RDFT code

--disable-fft disable FFT code

--disable-faan disable floating point AAN (I)DCT code

--disable-pixelutils disable pixel utils in libavutil

Individual component options:

--disable-everything disable all components listed below

--disable-encoder=NAME disable encoder NAME

--enable-en

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值