安装完系统后
sudo passwd // 配置root的密码
su - // 切换为root用户
apt-get update // 更新数据源
apt-get install openssh-server // 安装ssh服务端
ifconfig // 查看主机IP地址
apt-get install vim // 安装一个编辑工具
ssh parallels@10.211.55.4 // 不能用root登录Ubuntu
wget https://dl.google.com/android/repository/android-ndk-r14b-linux-x86_64.zip
apt-get install unzip
unzip android-ndk-r14b-linux-x86_64.zip
// samba共享
apt-get install samba
vim /etc/samba/smb.conf
/*******文件尾********/
[root]
comment=root
path=/root
browseable=yes
readonly=on
/***************/
smbpasswd -a root // 添加root用户
/etc/init.d/samba restart // 重启samba
git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
wget http://ffmpeg.org/releases/ffmpeg-3.4.tar.bz2
tar -xvf ffmpeg-3.4.tar.bz2
apt-get install make
// 编译ffmpeg
./configure
// ./configure help
make -j16
make install
------configure------
--prefix 输出目录
--enable 开启模块,硬解码,neon
--disable 禁止模块,禁止ffmpeg工具
交叉编译参数 cross-prefix arch target cpu sysroot extra-cflags
cd ffmpeg-3.4
// NDK路径
export NDK=/home/parallels/ff/android-ndk-r14b
// 指定平台android5.0 架构下的so库和头文件
export PLATFORM=$NDK/platforms/android-21/arch-arm
// 工具链 交叉编译工具 谁来用(linux-x86),用在那(arm)
export TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
// cpu输出类型
export CPU=armv7-a
// 输出路径
export PREFIX=./android/$CPU
// 用env看下环境变量
// 生成makefile文件
./configure \
--prefix=$PREFIX \
--target-os=android \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--arch=arm \
--cpu=armv7-a \
--sysroot=$PLATFORM \
--extra-cflags="-I$PLATFORM/usr/include -fPIC -DANDROID -mfpu=neon -mfloat-abi=softfp " \
--cc=$TOOLCHAIN/bin/arm-linux-androideabi-gcc \
--nm=$TOOLCHAIN/bin/arm-linux-androideabi-nm \
--enable-shared \
--enable-runtime-cpudetect \
--enable-gpl \
--enable-small \
--enable-cross-compile \
--enable-asm \
--enable-neon \
--enable-jni \
--enable-mediacodec \
--enable-decoder=h264_mediacodec \
--enable-hwaccel=h264_mediacodec \
--disable-debug \
--disable-static \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-postproc \
--disable-avdevice \
--disable-symver \
--disable-stripping
make -j16
vim zzh_android_build.sh
-----------
#!/bin/bash
echo "进入编译ffmpeg脚本"
-----------
chmod +x zzh_android_build.sh
./zzh_android_build.sh

make clean
./zzh_android_build.sh
bash -x zzh_android_build.sh // 看打印输出
软解码
开neon单线程 60帧 CPU占用一样
不开neon单线程 30帧 CPU占用一样
开neon 8线程 250帧
不开neon 8线程 140帧
硬解码 120帧