diff --git a/16kpatch/README.md b/16kpatch/README.md new file mode 100644 index 000000000..1ea26b60e --- /dev/null +++ b/16kpatch/README.md @@ -0,0 +1,6 @@ +# 使用 + +使用 ndk 22 ,可以编译适配 16K page size 的 git diff patch + +- 如果需要成品,可见: [arm64-v8a](../gsyVideoPlayer-ex_so/src/main/jniLibs/arm64-v8a) +- 如果需要 ndkr10e,可见: [ndkr10e](./old) diff --git a/16kpatch/old/README.md b/16kpatch/old/README.md new file mode 100644 index 000000000..a3b79f048 --- /dev/null +++ b/16kpatch/old/README.md @@ -0,0 +1,5 @@ +# 说明 + +这部分不想升级 ndk ,使用 ndk 10e 既可以编译适配 16K page size 的 git diff patch + +- 如果需要成品,可见: [arm64-v8a](../../gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a) diff --git a/16kpatch/old/ndk10e_diff_patch.patch b/16kpatch/old/ndk10e_diff_patch.patch new file mode 100644 index 000000000..dfc326ef8 --- /dev/null +++ b/16kpatch/old/ndk10e_diff_patch.patch @@ -0,0 +1,419 @@ +diff --git a/android/compile-ijk.sh b/android/compile-ijk.sh +index 95062ea4..1d431b6d 100755 +--- a/android/compile-ijk.sh ++++ b/android/compile-ijk.sh +@@ -54,17 +54,17 @@ do_sub_cmd () { + + case $SUB_CMD in + prof) +- $ANDROID_NDK/ndk-build $FF_MAKEFLAGS ++ arch -x86_64 /bin/bash $ANDROID_NDK/ndk-build $FF_MAKEFLAGS + ;; + clean) +- $ANDROID_NDK/ndk-build clean ++ arch -x86_64 /bin/bash $ANDROID_NDK/ndk-build clean + ;; + rebuild) +- $ANDROID_NDK/ndk-build clean +- $ANDROID_NDK/ndk-build $FF_MAKEFLAGS ++ arch -x86_64 /bin/bash $ANDROID_NDK/ndk-build clean ++ arch -x86_64 /bin/bash $ANDROID_NDK/ndk-build $FF_MAKEFLAGS + ;; + *) +- $ANDROID_NDK/ndk-build $FF_MAKEFLAGS ++ arch -x86_64 /bin/bash $ANDROID_NDK/ndk-build $FF_MAKEFLAGS + ;; + esac + } +diff --git a/android/contrib/tools/do-compile-ffmpeg.sh b/android/contrib/tools/do-compile-ffmpeg.sh +index d6b3ba63..f67490f3 100755 +--- a/android/contrib/tools/do-compile-ffmpeg.sh ++++ b/android/contrib/tools/do-compile-ffmpeg.sh +@@ -55,7 +55,7 @@ FF_DEP_LIBSOXR_LIB= + FF_CFG_FLAGS= + + FF_EXTRA_CFLAGS= +-FF_EXTRA_LDFLAGS= ++FF_EXTRA_LDFLAGS="-Wl,-z,max-page-size=65536 -Wl,-z,common-page-size=65536" + FF_DEP_LIBS= + + FF_MODULE_DIRS="compat libavcodec libavfilter libavformat libavutil libswresample libswscale" +diff --git a/android/contrib/tools/do-compile-openssl.sh b/android/contrib/tools/do-compile-openssl.sh +index 20e87949..17b5faf5 100644 +--- a/android/contrib/tools/do-compile-openssl.sh ++++ b/android/contrib/tools/do-compile-openssl.sh +@@ -46,8 +46,7 @@ FF_CFG_FLAGS= + FF_PLATFORM_CFG_FLAGS= + + FF_EXTRA_CFLAGS= +-FF_EXTRA_LDFLAGS= +- ++FF_EXTRA_LDFLAGS="-Wl,-z,max-page-size=65536 -Wl,-z,common-page-size=65536" + + + #-------------------- +diff --git a/android/contrib/tools/do-detect-env.sh b/android/contrib/tools/do-detect-env.sh +index 36d64fdc..af1f76cb 100644 +--- a/android/contrib/tools/do-detect-env.sh ++++ b/android/contrib/tools/do-detect-env.sh +@@ -68,7 +68,7 @@ case "$IJK_NDK_REL" in + IJK_NDK_REL=$(grep -o '^Pkg\.Revision.*=[0-9]*.*' $ANDROID_NDK/source.properties 2>/dev/null | sed 's/[[:space:]]*//g' | cut -d "=" -f 2) + echo "IJK_NDK_REL=$IJK_NDK_REL" + case "$IJK_NDK_REL" in +- 11*|12*|13*|14*) ++ 11*|12*|13*|14*|15*|16*|21*) + if test -d ${ANDROID_NDK}/toolchains/arm-linux-androideabi-4.9 + then + echo "NDKr$IJK_NDK_REL detected" +@@ -88,7 +88,7 @@ esac + + case "$UNAME_S" in + Darwin) +- export IJK_MAKE_FLAG=-j`sysctl -n machdep.cpu.thread_count` ++ export IJK_MAKE_FLAG=-j1 + ;; + CYGWIN_NT-*) + IJK_WIN_TEMP="$(cygpath -am /tmp)" +diff --git a/config/module.sh b/config/module.sh +deleted file mode 120000 +index 0f16f539..00000000 +--- a/config/module.sh ++++ /dev/null +@@ -1 +0,0 @@ +-module-lite.sh +\ No newline at end of file +diff --git a/config/module.sh b/config/module.sh +new file mode 100644 +index 00000000..bb494c73 +--- /dev/null ++++ b/config/module.sh +@@ -0,0 +1,275 @@ ++#! /usr/bin/env bash ++ ++#-------------------- ++# Standard options: ++export COMMON_FF_CFG_FLAGS= ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --prefix=PREFIX" ++ ++# Licensing options: ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-gpl" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-version3" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-nonfree" ++ ++# Configuration options: ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-static" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-shared" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-small" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-runtime-cpudetect" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-gray" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-swscale-alpha" ++ ++# Program options: ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-programs" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffmpeg" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffplay" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffprobe" ++#export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffserver" ++ ++# Documentation options: ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-doc" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-htmlpages" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-manpages" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-podpages" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-txtpages" ++ ++# Component options: ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-avdevice" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avcodec" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avformat" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avutil" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-swresample" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-swscale" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-postproc" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avfilter" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-avresample" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-pthreads" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-w32threads" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-os2threads" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-network" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-dct" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-dwt" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-lsp" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-lzo" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-mdct" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-rdft" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-fft" ++ ++# Hardware accelerators: ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-d3d11va" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-dxva2" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vaapi" ++#export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vda" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vdpau" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-videotoolbox" ++ ++# Individual component options: ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-everything" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-encoders" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-encoder=png" ++ ++# ./configure --list-decoders ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-decoders" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=aac" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=aac_latm" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=flv" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=h264" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=mp3*" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=vp6f" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=flac" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=hevc" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=vp8" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=vp9" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=h263" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=h263i" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=h263p" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=mpeg4" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-decoder=mjpeg" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=ijk*" ++ ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-hwaccels" ++ ++# ./configure --list-muxers ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-muxers" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-muxer=mp4" ++ ++# ./configure --list-demuxers ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-demuxers" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=aac" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=concat" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=data" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=flv" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=hls" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=live_flv" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=mov" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=mp3" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=mpegps" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=mpegts" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=mpegvideo" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=flac" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=hevc" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=webm_dash_manifest" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=mpeg4" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=rtp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=sdp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=rtsp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=mjpeg" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-demuxer=avi" ++ ++# ./configure --list-parsers ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-parsers" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=aac" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=aac_latm" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=h264" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=flac" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=hevc" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=mpeg4" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=mpeg4video" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-parser=mpegvideo" ++ ++# ./configure --list-bsf ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-bsfs" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=chomp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=dca_core" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=dump_extradata" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=hevc_mp4toannexb" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=imx_dump_header" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=mjpeg2jpeg" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=mjpega_dump_header" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=mov2textsub" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=mp3_header_decompress" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=mpeg4_unpack_bframes" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=noise" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=remove_extradata" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=text2movsub" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=vp9_superframe" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=eac3_core" ++ ++# ./configure --list-protocols ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocols" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=async" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=bluray" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=concat" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=crypto" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=ffrtmpcrypt" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=ffrtmphttp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=gopher" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=icecast" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=librtmp*" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=libssh" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=md5" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=mmsh" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=mmst" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=rtmp*" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=rtmp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=rtmpt" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=rtp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=sctp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-protocol=srtp" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=subfile" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-protocol=unix" ++ ++# ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-devices" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-filters" ++ ++# External library support: ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-iconv" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-audiotoolbox" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-videotoolbox" ++ ++# ... ++ ++# Advanced options (experts only): ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --cross-prefix=${FF_CROSS_PREFIX}-" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-cross-compile" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --sysroot=PATH" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --sysinclude=PATH" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --target-os=TAGET_OS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --target-exec=CMD" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --target-path=DIR" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --toolchain=NAME" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --nm=NM" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --ar=AR" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --as=AS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --yasmexe=EXE" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --cc=CC" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --cxx=CXX" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --dep-cc=DEPCC" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --ld=LD" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --host-cc=HOSTCC" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --host-cflags=HCFLAGS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --host-cppflags=HCPPFLAGS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --host-ld=HOSTLD" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --host-ldflags=HLDFLAGS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --host-libs=HLIBS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --host-os=OS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --extra-cflags=ECFLAGS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --extra-cxxflags=ECFLAGS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --extra-ldflags=ELDFLAGS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --extra-libs=ELIBS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --extra-version=STRING" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --optflags=OPTFLAGS" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --build-suffix=SUFFIX" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --malloc-prefix=PREFIX" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --progs-suffix=SUFFIX" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --arch=ARCH" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --cpu=CPU" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-pic" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-sram" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-thumb" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-symver" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-hardcoded-tables" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-safe-bitstream-reader" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-memalign-hack" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-lto" ++ ++# Optimization options (experts only): ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-asm" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-altivec" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-amd3dnow" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-amd3dnowext" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-mmx" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-mmxext" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-sse" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-sse2" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-sse3" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ssse3" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-sse4" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-sse42" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-avx" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-fma4" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-armv5te" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-armv6" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-armv6t2" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vfp" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-neon" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vis" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-inline-asm" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-yasm" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-mips32r2" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-mipsdspr1" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-mipsdspr2" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-mipsfpu" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-fast-unaligned" ++ ++# Developer options (useful when working on FFmpeg itself): ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-coverage" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-debug" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-debug=LEVEL" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-optimizations" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-extra-warnings" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-stripping" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --assert-level=level" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-memory-poisoning" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --valgrind=VALGRIND" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-ftrapv" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --samples=PATH" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-xmm-clobber-test" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-random" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-random" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-random=LIST" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-random=LIST" ++# export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --random-seed=VALUE" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-linux-perf" ++export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bzlib" ++ +diff --git a/ijkmedia/ijkj4a/Android.mk b/ijkmedia/ijkj4a/Android.mk +index 37d2bee6..47c9069e 100644 +--- a/ijkmedia/ijkj4a/Android.mk ++++ b/ijkmedia/ijkj4a/Android.mk +@@ -42,6 +42,9 @@ LOCAL_SRC_FILES += j4a/class/tv/danmaku/ijk/media/player/IjkMediaPlayer.c + LOCAL_SRC_FILES += j4au/class/android/media/AudioTrack.util.c + LOCAL_SRC_FILES += j4au/class/java/nio/ByteBuffer.util.c + ++LOCAL_LDFLAGS += -Wl,-z,max-page-size=65536 ++LOCAL_LDFLAGS += -Wl,-z,common-page-size=65536 ++ + LOCAL_MODULE := ijkj4a + include $(BUILD_STATIC_LIBRARY) + +diff --git a/ijkmedia/ijkplayer/Android.mk b/ijkmedia/ijkplayer/Android.mk +index 552c1142..2a2b9bc6 100644 +--- a/ijkmedia/ijkplayer/Android.mk ++++ b/ijkmedia/ijkplayer/Android.mk +@@ -82,6 +82,9 @@ LOCAL_STATIC_LIBRARIES := android-ndk-profiler ijksoundtouch + + LOCAL_MODULE := ijkplayer + ++LOCAL_LDFLAGS += -Wl,-z,max-page-size=65536 ++LOCAL_LDFLAGS += -Wl,-z,common-page-size=65536 ++ + VERSION_SH = $(LOCAL_PATH)/version.sh + VERSION_H = ijkversion.h + $(info $(shell ($(VERSION_SH) $(LOCAL_PATH) $(VERSION_H)))) +diff --git a/ijkmedia/ijksdl/Android.mk b/ijkmedia/ijksdl/Android.mk +index 7574a951..3fa8492e 100644 +--- a/ijkmedia/ijksdl/Android.mk ++++ b/ijkmedia/ijksdl/Android.mk +@@ -75,6 +75,9 @@ LOCAL_SRC_FILES += android/ijksdl_vout_overlay_android_mediacodec.c + LOCAL_SHARED_LIBRARIES := ijkffmpeg + LOCAL_STATIC_LIBRARIES := cpufeatures yuv_static ijkj4a + ++LOCAL_LDFLAGS += -Wl,-z,max-page-size=65536 ++LOCAL_LDFLAGS += -Wl,-z,common-page-size=65536 ++ + LOCAL_MODULE := ijksdl + include $(BUILD_SHARED_LIBRARY) + +diff --git a/ijkprof/android-ndk-profiler-dummy/jni/Android.mk b/ijkprof/android-ndk-profiler-dummy/jni/Android.mk +index 4a6d00aa..357b6d3a 100644 +--- a/ijkprof/android-ndk-profiler-dummy/jni/Android.mk ++++ b/ijkprof/android-ndk-profiler-dummy/jni/Android.mk +@@ -23,5 +23,7 @@ include $(CLEAR_VARS) + + LOCAL_MODULE := android-ndk-profiler + LOCAL_SRC_FILES := prof.c ++LOCAL_LDFLAGS += -Wl,-z,max-page-size=65536 ++LOCAL_LDFLAGS += -Wl,-z,common-page-size=65536 + + include $(BUILD_STATIC_LIBRARY) diff --git a/16kpatch/old/ndk10e_diff_patch_sounchtouch.patch b/16kpatch/old/ndk10e_diff_patch_sounchtouch.patch new file mode 100644 index 000000000..289cff65d --- /dev/null +++ b/16kpatch/old/ndk10e_diff_patch_sounchtouch.patch @@ -0,0 +1,27 @@ +diff --git a/Android.mk b/Android.mk +index d901211..37a75c8 100644 +--- a/Android.mk ++++ b/Android.mk +@@ -45,6 +45,8 @@ LOCAL_SRC_FILES += source/SoundTouch/PeakFinder.cpp + LOCAL_SRC_FILES += source/SoundTouch/SoundTouch.cpp + LOCAL_SRC_FILES += source/SoundTouch/mmx_optimized.cpp + LOCAL_SRC_FILES += ijksoundtouch_wrap.cpp ++LOCAL_LDFLAGS += -Wl,-z,max-page-size=65536 ++LOCAL_LDFLAGS += -Wl,-z,common-page-size=65536 + + LOCAL_MODULE := ijksoundtouch + include $(BUILD_STATIC_LIBRARY) +diff --git a/source/Android-lib/jni/Android.mk b/source/Android-lib/jni/Android.mk +index f823b3e..07e44aa 100644 +--- a/source/Android-lib/jni/Android.mk ++++ b/source/Android-lib/jni/Android.mk +@@ -45,6 +45,9 @@ LOCAL_CFLAGS += -fvisibility=hidden -I ../../../include -fdata-sections -ffuncti + #LOCAL_CFLAGS += -fopenmp + #LOCAL_LDFLAGS += -fopenmp + ++LOCAL_LDFLAGS += -Wl,-z,max-page-size=65536 ++LOCAL_LDFLAGS += -Wl,-z,common-page-size=65536 ++ + + # Use ARM instruction set instead of Thumb for improved calculation performance in ARM CPUs + LOCAL_ARM_MODE := arm diff --git a/16kpatch/old/ndk10e_diff_patch_yuv.patch b/16kpatch/old/ndk10e_diff_patch_yuv.patch new file mode 100644 index 000000000..3bfc5792f --- /dev/null +++ b/16kpatch/old/ndk10e_diff_patch_yuv.patch @@ -0,0 +1,13 @@ +diff --git a/Android.mk b/Android.mk +index 3690b179..b5a2d1bc 100644 +--- a/Android.mk ++++ b/Android.mk +@@ -55,6 +55,8 @@ endif + + LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include + LOCAL_C_INCLUDES += $(LOCAL_PATH)/include ++LOCAL_LDFLAGS += -Wl,-z,max-page-size=65536 ++LOCAL_LDFLAGS += -Wl,-z,common-page-size=65536 + + LOCAL_MODULE := libyuv_static + LOCAL_MODULE_TAGS := optional diff --git a/app/src/main/java/com/example/gsyvideoplayer/DetailControlActivity.java b/app/src/main/java/com/example/gsyvideoplayer/DetailControlActivity.java index ab0fd5d58..2e03183d1 100644 --- a/app/src/main/java/com/example/gsyvideoplayer/DetailControlActivity.java +++ b/app/src/main/java/com/example/gsyvideoplayer/DetailControlActivity.java @@ -50,7 +50,8 @@ @RuntimePermissions public class DetailControlActivity extends GSYBaseActivityDetail { - private final String url = "https://res.exexm.com/cw_145225549855002"; + //private final String url = "https://res.exexm.com/cw_145225549855002"; + private final String url = "https://media.w3.org/2010/05/sintel/trailer.mp4"; //private String url = "http://livecdn1.news.cn/Live_MajorEvent01Phone/manifest.m3u8"; //private String url = "https://ruigongkao.oss-cn-shenzhen.aliyuncs.com/transcode/video/source/video/8908d124aa839d0d3fa9593855ef5957.m3u8"; //private String url2 = "http://ruigongkao.oss-cn-shenzhen.aliyuncs.com/transcode/video/source/video/3aca1a0db8db9418dcbc765848c8903e.m3u8"; diff --git a/app/src/main/java/com/example/gsyvideoplayer/DetailPlayer.java b/app/src/main/java/com/example/gsyvideoplayer/DetailPlayer.java index 9109a0090..d177bdad3 100644 --- a/app/src/main/java/com/example/gsyvideoplayer/DetailPlayer.java +++ b/app/src/main/java/com/example/gsyvideoplayer/DetailPlayer.java @@ -558,7 +558,7 @@ private String getUrl() { //String url = "https://res.exexm.com/cw_145225549855002"; //String url = "http://storage.gzstv.net/uploads/media/huangmeiyan/jr05-09.mp4";//mepg //String url = "https://zh-files.oss-cn-qingdao.aliyuncs.com/20170808223928mJ1P3n57.mp4";//90度 - String url = "http://devimages.apple.com.edgekey.net/streaming/examples/bipbop_4x3/gear3/prog_index.m3u8";//90度 + String url = "https://media.w3.org/2010/05/sintel/trailer.mp4";//90度 //String url = " String source1 = "http://9890.vod.myqcloud.com/9890_4e292f9a3dd011e6b4078980237cc3d3.f20.mp4"; //String url = "http://video.cdn.aizys.com/zzx3.9g.mkv";//long //String url = "rtsp://admin:wh123456@112.44.163.248:554/h264/ch01/main/av_stream";//long diff --git a/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkffmpeg.so b/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkffmpeg.so old mode 100644 new mode 100755 index 5f252fd7f..babbfdd78 Binary files a/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkffmpeg.so and b/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkffmpeg.so differ diff --git a/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkplayer.so b/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkplayer.so old mode 100644 new mode 100755 index a9f78e7bc..e2e1551ab Binary files a/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkplayer.so and b/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijkplayer.so differ diff --git a/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijksdl.so b/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijksdl.so old mode 100644 new mode 100755 index affc92c26..0c0f168e5 Binary files a/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijksdl.so and b/gsyVideoPlayer-armv64/src/main/jniLibs/arm64-v8a/libijksdl.so differ