From d6166d2a88af1ed8b9f56bbe0a2cd24ab9e097a7 Mon Sep 17 00:00:00 2001 From: enm10k Date: Fri, 26 Apr 2024 13:28:06 +0900 Subject: [PATCH 1/5] =?UTF-8?q?libwebrtc=20=E3=82=92=20m123.6312.3.4=20?= =?UTF-8?q?=E3=81=AB=E3=81=82=E3=81=92=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 2 ++ VERSION | 2 +- examples/VERSION | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 4b541acd..68303bc6 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -15,6 +15,8 @@ - @enm10k - [UPDATE] SDL2 を 2.30.2 にあげる - @enm10k +- [UPDATE] libwebrtc を m123.6312.3.4 にあげる + - @enm10k - [ADD] sumomo に `--openh264` と `--use-hardware-encoder` オプションを追加 - @melpon - [ADD] sumomo に `--video-h264-params` と `--video-h265-params` オプションを追加 diff --git a/VERSION b/VERSION index 6ad78f2b..26d70df0 100644 --- a/VERSION +++ b/VERSION @@ -1,5 +1,5 @@ SORA_CPP_SDK_VERSION=2024.6.1 -WEBRTC_BUILD_VERSION=m122.6261.1.0 +WEBRTC_BUILD_VERSION=m123.6312.3.4 BOOST_VERSION=1.85.0 CMAKE_VERSION=3.28.1 CUDA_VERSION=11.8.0-1 diff --git a/examples/VERSION b/examples/VERSION index c5455626..1bb00f88 100644 --- a/examples/VERSION +++ b/examples/VERSION @@ -1,5 +1,5 @@ SORA_CPP_SDK_VERSION=2024.6.1 -WEBRTC_BUILD_VERSION=m122.6261.1.0 +WEBRTC_BUILD_VERSION=m123.6312.3.4 BOOST_VERSION=1.85.0 CMAKE_VERSION=3.28.1 SDL2_VERSION=2.30.2 From 559c50db72bba114bfbfc027d8d9a1d358a0bc51 Mon Sep 17 00:00:00 2001 From: melpon Date: Thu, 11 Apr 2024 12:41:09 +0900 Subject: [PATCH 2/5] =?UTF-8?q?Android=20=E3=83=93=E3=83=AB=E3=83=89?= =?UTF-8?q?=E3=81=AE=E3=83=AA=E3=83=B3=E3=82=AB=E3=83=BC=E3=82=92=E5=A4=89?= =?UTF-8?q?=E3=81=88=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/android/app/build.gradle | 8 +++++--- test/android/app/src/main/cpp/CMakeLists.txt | 10 ++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/test/android/app/build.gradle b/test/android/app/build.gradle index 55913fcf..5300aaa1 100644 --- a/test/android/app/build.gradle +++ b/test/android/app/build.gradle @@ -33,9 +33,11 @@ android { "-DWEBRTC_INCLUDE_DIR=$projectDir/../../../_install/android/release/webrtc/include", "-DWEBRTC_LIBRARY_DIR=$projectDir/../../../_install/android/release/webrtc/lib/arm64-v8a", "-DLIBCXX_INCLUDE_DIR=$projectDir/../../../_install/android/release/llvm/libcxx/include", - // "-DWEBRTC_INCLUDE_DIR=$projectDir/../../../_source/android/release/webrtc/src", - // "-DWEBRTC_LIBRARY_DIR=$projectDir/../../../_build/android/release/webrtc", - // "-DLIBCXX_INCLUDE_DIR=$projectDir/../../../_source/android/release/webrtc/src/buildtools/third_party/libc++/trunk/include", + "-DLLVM_DIR=$projectDir/../../../_install/android/release/llvm/clang", + // "-DWEBRTC_INCLUDE_DIR=$projectDir/../../../../webrtc-build/_source/android/webrtc/src", + // "-DWEBRTC_LIBRARY_DIR=$projectDir/../../../../webrtc-build/_build/android/release/webrtc/arm64-v8a", + // "-DLIBCXX_INCLUDE_DIR=$projectDir/../../../../webrtc-build/_source/android/webrtc/src/third_party/libc++/src/include", + // "-DLLVM_DIR=$projectDir/../../../../webrtc-build/_source/android/webrtc/src/third_party/llvm-build/Release+Asserts", "-DANDROID_STL=none", "-DANDROID_NATIVE_API_LEVEL=29", "-DANDROID_PLATFORM=29", diff --git a/test/android/app/src/main/cpp/CMakeLists.txt b/test/android/app/src/main/cpp/CMakeLists.txt index f5ee5998..0c5ab49e 100644 --- a/test/android/app/src/main/cpp/CMakeLists.txt +++ b/test/android/app/src/main/cpp/CMakeLists.txt @@ -45,6 +45,16 @@ target_link_libraries(hello PRIVATE Sora::sora ${Blend2D_LIBRARY}) target_compile_definitions(hello PRIVATE BL_STATIC=1) target_include_directories(hello PRIVATE ${BLEND2D_ROOT_DIR}/include) +# libwebrtc が ELF フォーマットの新しい仕様を使ってリンクしているため、 +# Android NDK に用意されている標準のリンカーだと以下のようなリンクエラーになってしまう。 +# +# C/C++: ld.lld: error: /home/runner/work/sora-cpp-sdk/sora-cpp-sdk/_install/android/release/webrtc/lib/arm64-v8a/libwebrtc.a(jsep_ice_candidate.o):(.rodata+0x4): unknown relocation (315) against symbol typeinfo for webrtc::JsepIceCandidate +# +# なので libwebrtc と同じバージョンのリンカーを使ってリンクするために -B でリンカーのパスを指定する。 +# +# 新しい仕様の該当コミット: https://github.com/llvm/llvm-project/commit/04a906ec980e7bf49ffda0808766f51d08e8ae76 +set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -B ${LLVM_DIR}/bin") + target_compile_options(hello PRIVATE "$<$:-nostdinc++>" From 3e6b0b0ac59a1b4ce0d34e4b56d753bb814f4f82 Mon Sep 17 00:00:00 2001 From: enm10k Date: Thu, 2 May 2024 14:34:34 +0900 Subject: [PATCH 3/5] =?UTF-8?q?libwebrtc=20=E3=82=92=20m123.6312.3.5=20?= =?UTF-8?q?=E3=81=AB=E3=81=82=E3=81=92=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 2 +- VERSION | 2 +- examples/VERSION | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 68303bc6..fc93769f 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -15,7 +15,7 @@ - @enm10k - [UPDATE] SDL2 を 2.30.2 にあげる - @enm10k -- [UPDATE] libwebrtc を m123.6312.3.4 にあげる +- [UPDATE] libwebrtc を m123.6312.3.5 にあげる - @enm10k - [ADD] sumomo に `--openh264` と `--use-hardware-encoder` オプションを追加 - @melpon diff --git a/VERSION b/VERSION index 26d70df0..4c948067 100644 --- a/VERSION +++ b/VERSION @@ -1,5 +1,5 @@ SORA_CPP_SDK_VERSION=2024.6.1 -WEBRTC_BUILD_VERSION=m123.6312.3.4 +WEBRTC_BUILD_VERSION=m123.6312.3.5 BOOST_VERSION=1.85.0 CMAKE_VERSION=3.28.1 CUDA_VERSION=11.8.0-1 diff --git a/examples/VERSION b/examples/VERSION index 1bb00f88..0118ade3 100644 --- a/examples/VERSION +++ b/examples/VERSION @@ -1,5 +1,5 @@ SORA_CPP_SDK_VERSION=2024.6.1 -WEBRTC_BUILD_VERSION=m123.6312.3.4 +WEBRTC_BUILD_VERSION=m123.6312.3.5 BOOST_VERSION=1.85.0 CMAKE_VERSION=3.28.1 SDL2_VERSION=2.30.2 From 0b18d8351f58058b8fc44dd30cb05769d346a1c9 Mon Sep 17 00:00:00 2001 From: enm10k Date: Thu, 2 May 2024 15:13:42 +0900 Subject: [PATCH 4/5] =?UTF-8?q?CHANGES.md=20=E3=82=92=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index fc93769f..e08ec863 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -16,7 +16,7 @@ - [UPDATE] SDL2 を 2.30.2 にあげる - @enm10k - [UPDATE] libwebrtc を m123.6312.3.5 にあげる - - @enm10k + - @melpon @enm10k - [ADD] sumomo に `--openh264` と `--use-hardware-encoder` オプションを追加 - @melpon - [ADD] sumomo に `--video-h264-params` と `--video-h265-params` オプションを追加 From e595052c3eefa2810622eb45e12d51c0f92cca62 Mon Sep 17 00:00:00 2001 From: enm10k Date: Tue, 7 May 2024 11:53:20 +0900 Subject: [PATCH 5/5] =?UTF-8?q?Android=20=E3=81=AE=20test=20=E3=82=A2?= =?UTF-8?q?=E3=83=97=E3=83=AA=E3=81=AE=E3=83=AA=E3=83=B3=E3=82=AF=E6=99=82?= =?UTF-8?q?=E3=81=AB=E7=99=BA=E7=94=9F=E3=81=97=E3=81=9F=E3=82=A8=E3=83=A9?= =?UTF-8?q?=E3=83=BC=E3=82=92=E8=A7=A3=E6=B1=BA=E3=81=99=E3=82=8B=E3=81=9F?= =?UTF-8?q?=E3=82=81=E3=81=AB=E3=83=AA=E3=83=B3=E3=82=AB=E3=83=BC=E3=82=92?= =?UTF-8?q?=E5=A4=89=E6=9B=B4=E3=81=97=E3=81=9F=E7=B5=8C=E7=B7=AF=E3=82=92?= =?UTF-8?q?=20CHANGES.md=20=E3=81=AB=E8=BF=BD=E8=A8=98=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index e08ec863..67927844 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -16,6 +16,8 @@ - [UPDATE] SDL2 を 2.30.2 にあげる - @enm10k - [UPDATE] libwebrtc を m123.6312.3.5 にあげる + - Android の test アプリのリンク時に発生したエラーを解決するために、リンカーを Android NDK に含まれるものから libwebrtc のものに変更した + - リンカーのバージョンの違いによる互換性の問題でエラーが発生していたため、次回 Android NDK のバージョンを更新する際に、修正箇所を元に戻せる可能性がある - @melpon @enm10k - [ADD] sumomo に `--openh264` と `--use-hardware-encoder` オプションを追加 - @melpon