在安卓上播放实时视频之类的需要sdl做框架,ffmpeg做核心。会安卓的直接jni调ffmpeg也行,我不会安卓
其中有两个问题,ffmpeg,vs编不了;虚机(ubuntu)上跑模拟器很卡
那么就虚机上编ffmpeg,本机上跑模拟器
【虚机】
下载ndk8,我的ubuntu是10.04,gcc版本太低,打不开ndk9的.bin,
[编译arm版的ffmpeg]
#!/bin/bash
NDK=/home/mynamepfd/android/ndk8
SYSROOT=$NDK/platforms/android-14/arch-arm
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86
function build_one
{
./configure \
--prefix=$PREFIX \
--enable-shared \
--disable-static \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-avdevice \
--disable-doc \
--disable-symver \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--target-os=linux \
--arch=arm \
--enable-cross-compile \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $ADDI_CFLAGS" \
--extra-ldflags="$ADDI_LDFLAGS" \
$ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS="-marm"
build_one
【本机环境】
下载jdk,eclipse,离线安装adt,一定要最新版的,否则没法打开sdk跟ndk,而且还没法更新。
将ubuntu中的ffmpeg拷贝到sdl的android-project的jni下,