PJSIP_NOTES 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. The WebRtc source is cloned from the repo:
  2. https://webrtc.googlesource.com/src
  3. dated Apr 21 2021
  4. license: third_party/webrtc_aec3/LICENSE
  5. The abseil's source in src/absl is not part of WebRtc and taken separately from:
  6. https://github.com/abseil/abseil-cpp
  7. dated Apr 20 2021
  8. abseil's license: src/absl/LICENSE
  9. src/third_party's source is obtained from:
  10. * rnnoise
  11. https://chromium.googlesource.com/chromium/src/+/HEAD/third_party/rnnoise
  12. dated Apr 30 2021
  13. license: src/third_party/rnnoise/COPYING
  14. * pffft
  15. https://bitbucket.org/jpommier/pffft/src/master/
  16. dated Apr 30 2021
  17. license: src/third_party/pffft/README.txt
  18. Local changes:
  19. 1. Undeclared PR_SET_NAME on Android.
  20. diff --git a/third_party/webrtc_aec3/src/rtc_base/platform_thread_types.cc b/third_party/webrtc_aec3/src/rtc_base/platform_thread_types.cc
  21. index b0243b41d..fc7a09000 100644
  22. --- a/third_party/webrtc_aec3/src/rtc_base/platform_thread_types.cc
  23. +++ b/third_party/webrtc_aec3/src/rtc_base/platform_thread_types.cc
  24. @@ -105,7 +105,7 @@ void SetCurrentThreadName(const char* name) {
  25. } __except (EXCEPTION_EXECUTE_HANDLER) { // NOLINT
  26. }
  27. #pragma warning(pop)
  28. -#elif defined(WEBRTC_LINUX) || defined(WEBRTC_ANDROID)
  29. +#elif defined(WEBRTC_LINUX) // || defined(WEBRTC_ANDROID)
  30. prctl(PR_SET_NAME, reinterpret_cast<unsigned long>(name)); // NOLINT
  31. #elif defined(WEBRTC_MAC) || defined(WEBRTC_IOS)
  32. pthread_setname_np(name);
  33. 2. Error: 'unique_ptr' is not a member of 'std' on Linux.
  34. diff --git a/third_party/webrtc_aec3/src/modules/audio_processing/aec3/reverb_model_estimator.h b/third_party/webrtc_aec3/src/modules/audio_processing/aec3/reverb_model_estimator.h
  35. index 3b9971aba..e4e954067 100644
  36. --- a/third_party/webrtc_aec3/src/modules/audio_processing/aec3/reverb_model_estimator.h
  37. +++ b/third_party/webrtc_aec3/src/modules/audio_processing/aec3/reverb_model_estimator.h
  38. @@ -12,6 +12,7 @@
  39. #define MODULES_AUDIO_PROCESSING_AEC3_REVERB_MODEL_ESTIMATOR_H_
  40. #include <array>
  41. +#include <memory>
  42. #include <vector>
  43. 3. Visual Studio will choose one implementation from the source code with the same file name.
  44. Rename these files:
  45. - third_party/webrtc_aec3/src/common_audio/signal_processing/{splitting_filter.c => splitting_filter2.c}
  46. - third_party/webrtc_aec3/src/modules/audio_processing/agc2/rnn_vad/{vector_math_avx2.cc => rnn_vector_math_avx2.cc}
  47. - third_party/webrtc_aec3/src/system_wrappers/source/{cpu_features.cc => cpu_features2.cc}
  48. 4. error C2011: 'sockaddr': 'struct' type redefinition
  49. diff --git a/third_party/webrtc_aec3/src/rtc_base/logging.cc b/third_party/webrtc_aec3/src/rtc_base/logging.cc
  50. index a333d8397..e0e669b5e 100644
  51. --- a/third_party/webrtc_aec3/src/rtc_base/logging.cc
  52. +++ b/third_party/webrtc_aec3/src/rtc_base/logging.cc
  53. @@ -15,6 +15,7 @@
  54. #if RTC_LOG_ENABLED()
  55. #if defined(WEBRTC_WIN)
  56. +#include <winsock2.h>
  57. 5. ARM64 support build for Visual Studio.
  58. diff --git a/third_party/webrtc_aec3/src/third_party/pffft/src/pffft.c b/third_party/webrtc_aec3/src/third_party/pffft/src/pffft.c
  59. index d76d35167..2d8b1037f 100644
  60. --- a/third_party/webrtc_aec3/src/third_party/pffft/src/pffft.c
  61. +++ b/third_party/webrtc_aec3/src/third_party/pffft/src/pffft.c
  62. @@ -148,7 +148,7 @@ typedef __m128 v4sf;
  63. /*
  64. ARM NEON support macros
  65. */
  66. -#elif !defined(PFFFT_SIMD_DISABLE) && (defined(__arm__) || defined(__aarch64__) || defined(__arm64__))
  67. +#elif !defined(PFFFT_SIMD_DISABLE) && (defined(__arm__) || defined(__aarch64__) || defined(__arm64__) || defined(_M_ARM64))
  68. # include <arm_neon.h>
  69. typedef float32x4_t v4sf;
  70. # define SIMD_SZ 4