网站备案 核验单,app和手机网站的区别是什么,小程序开发费用一览表含价格,证券网站怎么做1. ffmpeg 简介#xff1a; FFmpeg是一套可以用来记录、转换数字音频、视频#xff0c;并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec#xff0c;为了保证高可移…1. ffmpeg 简介 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。 [1]FFmpeg编码库可以使用GPU加速。
2. ffmpeg组成 FFmpeg是一套可以用来记录、转换数字音频、视频并能将其转化为流的开源计算机程序。它包括了领先的音/视频编码库libavcodec等。
libavformat用于各种音视频封装格式的生成和解析包括获取解码所需信息以生成解码上下文结构和读取音视频帧等功能
libavcodec用于各种类型声音/图像编解码
libavutil包含一些公共的工具函数
libswscale用于视频场景比例缩放、色彩映射转换
libpostproc用于后期效果处理
ffmpeg该项目提供的一个工具可用于格式转换、解码或电视卡即时编码等
ffsever一个 HTTP 多媒体即时广播串流服务器
ffplay是一个简单的播放器使用ffmpeg 库解析和解码通过SDL显示
3. 编译
3.1 ffmpeg 下载
ffmpeg 官网地址如下
https://ffmpeg.org/download.htmlffmpeg 下载代码命令
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
3.2 编译
将代码切换到release-4.0分支在根目录下新建文件congfig.sh 内容如下
#ndk 环境
NDK/Users/xxx/Documents/source/android-ndk-r16b
SYSROOT$NDK/platforms/android-21/arch-arm
TOOLCHAIN$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64
# cpu 架构平台若要编译 x86 则指定 x86
#CPUarmv7-a
CPUarm64-v8a
在根目录下创建build_android.sh文件内容如下
#!/bin/sh
. config.shPREFIX$(pwd)/android/$CPU
ISYSROOT$NDK/sysroot
ASM$ISYSROOT/usr/include/$PLATFORMmkdir -p $PREFIX
ADDI_CFLAGS-marm
function build_android
{
./configure \--prefix$PREFIX \--enable-shared \--enable-static \--disable-doc \--disable-ffmpeg \--disable-ffplay \--disable-ffprobe \--disable-avdevice \--disable-doc \--disable-symver \--cross-prefix$TOOLCHAIN/bin/arm-linux-androideabi- \--target-osandroid \--archarm \--enable-cross-compile \--sysroot$SYSROOT \--extra-cflags-I$ASM -isysroot $ISYSROOT -isystem $ISYSROOT/usr/include/arm-linux-androideabi -Os -fpic -marm \--extra-ldflags$ADDI_LDFLAGS \$ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
build_android
在根目录下的终端输入如下命令进行编译
./build_android.sh
运行完成以后可以在android目录下看到如下文件 4.参考文献
ffmpeg 百度百科