From 807efba375170a04106ef015353e3a2dd36871a8 Mon Sep 17 00:00:00 2001 From: frank <839789740@qq.com> Date: Wed, 18 Apr 2018 20:19:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0ffmpeg=E7=BC=96=E8=AF=91?= =?UTF-8?q?=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加ffmpeg编译脚本 --- Live/src/main/cpp/live.c | 2 +- README.md | 3 ++- build.sh | 37 +++++++++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 build.sh diff --git a/Live/src/main/cpp/live.c b/Live/src/main/cpp/live.c index 45d6ad7..b2ecfa6 100644 --- a/Live/src/main/cpp/live.c +++ b/Live/src/main/cpp/live.c @@ -320,8 +320,8 @@ Java_com_frank_live_LiveUtil_pushVideo(JNIEnv *env, jobject instance, jbyteArray jbyte *nv21_buffer = (*env)->GetByteArrayElements(env, data_, NULL); //Y相同,直接拷贝 memcpy(picture_in.img.plane[0], nv21_buffer, (size_t) y_len); - jbyte *u_buffer = (jbyte *) picture_in.img.plane[1]; jbyte *v_buffer = (jbyte *) picture_in.img.plane[2]; + jbyte *u_buffer = (jbyte *) picture_in.img.plane[1]; int i; //U和V交换 for(i=0; i +android端基于FFmpeg库的使用。
基于ffmpeg3.2.4版本,编译生成libffmpeg.so文件。
+添加编译ffmpeg源码的参考脚本
目前音视频相关处理:
- #### 音频剪切、拼接 diff --git a/build.sh b/build.sh new file mode 100644 index 0000000..ea2f8ce --- /dev/null +++ b/build.sh @@ -0,0 +1,37 @@ +#!/bin/bash + +NDK=/home/mn/bin/android-ndk-r15b +SYSROOT=$NDK/platforms/android-16/arch-arm/ +TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 +PREFIX=../output +ADDI_CFLAGS="-marm" + + +function build_ffmpeg +{ + ./configure \ + --prefix=$PREFIX \ + --enable-shared \ + --enable-small \ + --disable-static \ + --disable-doc \ + --disable-ffmpeg \ + --disable-ffplay \ + --disable-ffprobe \ + --disable-ffserver \ + --disable-symver \ + --target-os=linux \ + --arch=arm \ + --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \ + --enable-cross-compile \ + --sysroot=$SYSROOT \ + --extra-cflags="-Os -fpic $ADDI_CFLAGS" \ + --extra-ldflags="$ADDI_LDFLAGS" \ + $ADDITIONAL_CONFIGURE_FLAG + make clean + make + make install +} + +cd ffmpeg +build_ffmpeg \ No newline at end of file