From 5874327e5d7419c8937fec660a63ea16e58237cb Mon Sep 17 00:00:00 2001 From: tonihei Date: Fri, 12 Aug 2022 09:43:22 +0000 Subject: [PATCH] Add additional build flags for ffmpeg on "arm64-v8a" From NDK 23.1.7779620 and above, the arm64-v8a ABI needs additional build flags to correctly link the ffmpeg libraries. Issue: google/ExoPlayer#9933 PiperOrigin-RevId: 467161973 --- RELEASENOTES.md | 3 +++ libraries/decoder_ffmpeg/src/main/jni/CMakeLists.txt | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index a8f008dc8f..eb06385bbc 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -50,6 +50,9 @@ * Add timeout for loading ad information to handle cases where the IMA SDK gets stuck loading an ad ([#10510](https://github.com/google/ExoPlayer/issues/10510)). +* FFmpeg extension: + * Add newly required flags to link FFmpeg libraries with NDK 23.1.7779620 + and above ([#9933](https://github.com/google/ExoPlayer/issues/9933)). ### 1.0.0-beta02 (2022-07-21) diff --git a/libraries/decoder_ffmpeg/src/main/jni/CMakeLists.txt b/libraries/decoder_ffmpeg/src/main/jni/CMakeLists.txt index 9b41852481..2a81cd5430 100644 --- a/libraries/decoder_ffmpeg/src/main/jni/CMakeLists.txt +++ b/libraries/decoder_ffmpeg/src/main/jni/CMakeLists.txt @@ -21,6 +21,12 @@ set(CMAKE_CXX_STANDARD 11) project(libffmpegJNI C CXX) +# Additional flags needed for "arm64-v8a" from NDK 23.1.7779620 and above. +# See https://github.com/google/ExoPlayer/issues/9933#issuecomment-1029775358. +if(${ANDROID_ABI} MATCHES "arm64-v8a") + set(CMAKE_CXX_FLAGS "-Wl,-Bsymbolic") +endif() + set(ffmpeg_location "${CMAKE_CURRENT_SOURCE_DIR}/ffmpeg") set(ffmpeg_binaries "${ffmpeg_location}/android-libs/${ANDROID_ABI}")