Android ffmpeg ubuntu16.04下订制化的交叉编译

本文介绍了在Ubuntu16.04上为Android进行ffmpeg的定制化交叉编译,涉及libavcodec、libavformat等核心组件的功能解析,以及NDK环境配置、编译参数设置和解决编译后库文件过大的问题。
摘要由CSDN通过智能技术生成

Android ffmpeg ubuntu16.04下订制化的交叉编译

  1. 知识准备

    ffmpeg是个重量级的音视频相关库,在编译ffmpeg之前需要对ffmpeg各部分的功能有所了解,这样才能订制化的编译出自己需要的so,你也不想编译出来的so加起来10M多吧

    libavcodec 包含全部FFmpeg音频/视频编解码库。
    libavformat:实现了流媒体协议(udp、rtp、rtmp、rtsp等),媒体容器(mp4、AVI、Flv等)和基本的I/O访问。
    libavutil:是一个实用程序库,以帮助便携式多媒体编程。它包含了安全的移动字符串函数,随机数生成器,数据结构, 附加数学功能,加密和多媒体相关的功能(如枚举的像素采样格式)。
    libavfilter:用于对多媒体滤镜的调用。
    libavdevice:提供用于从采集和渲染到许多常见多媒体输入/输出设备的通用框架,并支持多个输入和输出设备,包括Video4Linux2、VfW、DSHOW和ALSA。
    libswresample:实现音频的重采样和混音,根据平台做了优化(neon等)。
    libswscale:实现了颜色格式的转换和缩放,具有同样功能的另一个库是libyuv
    libpostproc:用于后期效果处理
    【ffmpeg】(ffmpeg官方说明)一个命令行工具,用来对视频文件转换格式,也支持对电视卡实时编码。
    【ffserver】(ffserver官方说明)一个HTTP多媒体实时广播流服务器,支持时光平移。
    【ffplay】(ffplay官方说明)一个简单的播放器,基于SDL与FFmpeg库。
    【ffprobe】(ffprobe官方说明)一个简单的多媒体数据分析工具。

  2. ubuntu下的NDK环境配置

    环境变量配置:
    命令vim ~/.bashrc
    添加:
    export NDKROOT=/usr/ndk/android-ndk-r10e
    export PATH= NDKR

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值