Skip to content

Commit b961ea2

Browse files
committed
fix: update shell of ffmpeg, compat for ndk-r25c
1 parent 9e8346c commit b961ea2

1 file changed

Lines changed: 14 additions & 12 deletions

File tree

shell/ffmpeg/build_ffmpeg_one.sh

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,13 @@ fi
2727

2828
uname=`uname`
2929
if [ $uname = "Darwin" ];then
30-
echo "compile on mac"
3130
COMPILE_PLAT="darwin"
31+
CORE_NUM=$(getconf _NPROCESSORS_ONLN)
32+
echo "compile on mac, core=$CORE_NUM"
3233
elif [ $uname = "Linux" ]; then
33-
echo "compile on linux"
3434
COMPILE_PLAT="linux"
35+
CORE_NUM=$(nproc)
36+
echo "compile on linux, core=$CORE_NUM"
3537
else
3638
echo "don't support $uname"
3739
fi
@@ -40,12 +42,10 @@ export NDK=/Users/xufulong/Library/Android/sdk/ndk-bundle
4042
export TOOL=$NDK/toolchains/llvm/prebuilt/$COMPILE_PLAT-x86_64
4143
export TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/$COMPILE_PLAT-x86_64/bin
4244
export SYSROOT=$NDK/toolchains/llvm/prebuilt/$COMPILE_PLAT-x86_64/sysroot
43-
export CROSS_PREFIX=$TOOLCHAIN/$ARCH-linux-$ANDROID-
4445
export CC=$TOOLCHAIN/$PLATFORM-linux-$ANDROID$API-clang
4546
export CXX=$TOOLCHAIN/$PLATFORM-linux-$ANDROID$API-clang++
4647
export PLATFORM_API=$NDK/platforms/android-$API/arch-$PLATFORM_ARCH
4748
export PREFIX=../ffmpeg-android/$ABI
48-
export ADDITIONAL_CONFIGURE_FLAG="--cpu=$CPU"
4949

5050
THIRD_LIB=$PREFIX
5151
export EXTRA_CFLAGS="-Os -fPIC $OPTIMIZE_CFLAGS -I$THIRD_LIB/include"
@@ -55,14 +55,16 @@ function build_one() {
5555
./configure \
5656
--target-os=android \
5757
--prefix=$PREFIX \
58-
--cross-prefix=$CROSS_PREFIX \
58+
--cross-prefix=$TOOLCHAIN \
5959
--enable-cross-compile \
6060
--arch=$ARCH \
6161
--cpu=$CPU \
6262
--cc=$CC \
6363
--cxx=$CXX \
64-
--nm=$TOOLCHAIN/$ARCH-linux-$ANDROID-nm \
65-
--strip=$TOOLCHAIN/$ARCH-linux-$ANDROID-strip \
64+
--ar=$TOOLCHAIN/llvm-ar \
65+
--nm=$TOOLCHAIN/llvm-nm \
66+
--ranlib=$TOOLCHAIN/llvm-ranlib \
67+
--strip=$TOOLCHAIN/llvm-strip \
6668
--enable-cross-compile \
6769
--sysroot=$SYSROOT \
6870
--enable-hwaccels \
@@ -127,16 +129,16 @@ ssa,ass,dvbsub,dvdsub,pgssub,mov_text,sami,srt,subrip,text,webvtt \
127129
--enable-demuxer=aac,ac3,alaw,amr,amrnb,amrwb,ape,asf,asf_o,ass,av1,avi,cavsvideo,codec2,concat,dash,dnxhd,eac3,flac,flv,\
128130
g722,g726,g729,gif,gif_pipe,h263,h264,hevc,hls,image2,image2pipe,jpeg_pipe,lrc,m4v,matroska,webm,mjpeg,mov,mp4,m4a,3gp,mp3,mpeg,\
129131
mpegts,mpegvideo,mv,mulaw,manifest,ogg,pcm_s16be,pcm_s16le,pcm_s32be,pcm_s32le,pcm_f32be,pcm_f32le,pcm_f64be,pcm_f64le,\
130-
png_pipe,realtext,rm,rtp,rtsp,sami,sdp,srt,swf,vc1,wav,webm_dash,xmv \
131-
$ADDITIONAL_CONFIGURE_FLAG
132-
make
133-
make install
132+
png_pipe,realtext,rm,rtp,rtsp,sami,sdp,srt,swf,vc1,wav,webm_dash,xmv
133+
134+
make -j$CORE_NUM
135+
make install
134136
}
135137

136138
build_one
137139

138140
function link_one_ffmpeg() {
139-
$TOOLCHAIN/$ARCH-linux-$ANDROID-ld -rpath-link=$PLATFORM_API/usr/lib -L$PLATFORM_API/usr/lib \
141+
$TOOLCHAIN/ld -rpath-link=$PLATFORM_API/usr/lib -L$PLATFORM_API/usr/lib \
140142
-L$PREFIX/lib -soname libffmpeg.so \
141143
-shared -Bsymbolic --whole-archive --no-undefined -o $PREFIX/libffmpeg.so \
142144
$PREFIX/lib/libavcodec.a \

0 commit comments

Comments
 (0)