no-webrtc-build.patch 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. diff --git a/Telegram/SourceFiles/calls/calls_instance.cpp b/Telegram/SourceFiles/calls/calls_instance.cpp
  2. index e99958109..bb7678d3c 100644
  3. --- a/Telegram/SourceFiles/calls/calls_instance.cpp
  4. +++ b/Telegram/SourceFiles/calls/calls_instance.cpp
  5. @@ -350,8 +350,11 @@ std::shared_ptr<tgcalls::VideoCaptureInterface> Instance::getVideoCapture() {
  6. return result;
  7. }
  8. auto result = std::shared_ptr<tgcalls::VideoCaptureInterface>(
  9. + #ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION
  10. tgcalls::VideoCaptureInterface::Create(
  11. - Core::App().settings().callVideoInputDeviceId().toStdString()));
  12. + Core::App().settings().callVideoInputDeviceId().toStdString())
  13. + #endif
  14. + );
  15. _videoCapture = result;
  16. return result;
  17. }
  18. diff --git Telegram/lib_webrtc/CMakeLists.txt b/CMakeLists.txt
  19. index 47796f1..1f54c21 100644
  20. --- a/Telegram/lib_webrtc/CMakeLists.txt
  21. +++ b/Telegram/lib_webrtc/CMakeLists.txt
  22. @@ -14,8 +14,10 @@ target_precompile_headers(lib_webrtc PRIVATE ${src_loc}/webrtc/webrtc_pch.h)
  23. nice_target_sources(lib_webrtc ${src_loc}
  24. PRIVATE
  25. webrtc/webrtc_audio_input_tester.cpp
  26. + webrtc/webrtc_audio_input_tester_dummy.cpp
  27. webrtc/webrtc_audio_input_tester.h
  28. webrtc/webrtc_media_devices.cpp
  29. + webrtc/webrtc_media_devices_dummy.cpp
  30. webrtc/webrtc_media_devices.h
  31. webrtc/webrtc_video_track.cpp
  32. webrtc/webrtc_video_track.h
  33. @@ -40,10 +42,14 @@ PUBLIC
  34. if (DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION)
  35. remove_target_sources(lib_webrtc ${src_loc}
  36. webrtc/webrtc_video_track.cpp
  37. + webrtc/webrtc_media_devices.cpp
  38. + webrtc/webrtc_audio_input_tester.cpp
  39. )
  40. else()
  41. remove_target_sources(lib_webrtc ${src_loc}
  42. webrtc/webrtc_video_track_dummy.cpp
  43. + webrtc/webrtc_media_devices_dummy.cpp
  44. + webrtc/webrtc_audio_input_tester_dummy.cpp
  45. )
  46. target_link_libraries(lib_webrtc
  47. PRIVATE
  48. diff --git Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h b/webrtc/webrtc_audio_input_tester.h
  49. index 1ae8d30..008df7e 100644
  50. --- a/Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h
  51. +++ b/Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h
  52. @@ -20,11 +20,13 @@ public:
  53. [[nodiscard]] float getAndResetLevel();
  54. private:
  55. +#ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION
  56. class Impl;
  57. -
  58. +#endif
  59. std::shared_ptr<std::atomic<int>> _maxSample;
  60. +#ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION
  61. crl::object_on_thread<Impl> _impl;
  62. -
  63. +#endif
  64. };
  65. } // namespace Webrtc
  66. diff --git Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester_dummy.cpp b/webrtc/webrtc_audio_input_tester_dummy.cpp
  67. new file mode 100644
  68. index 0000000..4e47eaa
  69. --- a//dev/null
  70. +++ b/Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester_dummy.cpp
  71. @@ -0,0 +1,11 @@
  72. +#include "webrtc/webrtc_audio_input_tester.h"
  73. +
  74. +namespace Webrtc {
  75. +AudioInputTester::AudioInputTester(const QString &deviceId)
  76. +: _maxSample(std::make_shared<std::atomic<int>>(0)) {}
  77. +AudioInputTester::~AudioInputTester() {}
  78. +void AudioInputTester::setDeviceId(const QString &deviceId) {};
  79. +float AudioInputTester::getAndResetLevel() {
  80. + return _maxSample->exchange(0) / float(INT16_MAX);\
  81. +}
  82. +}
  83. diff --git Telegram/lib_webrtc/webrtc/webrtc_media_devices_dummy.cpp b/webrtc/webrtc_media_devices_dummy.cpp
  84. new file mode 100644
  85. index 0000000..8d5d245
  86. --- a/dev/null
  87. +++ b/Telegram/lib_webrtc/webrtc/webrtc_media_devices_dummy.cpp
  88. @@ -0,0 +1,6 @@
  89. +#include "webrtc/webrtc_media_devices.h"
  90. +namespace Webrtc {
  91. +std::vector<VideoInput> GetVideoInputList() { return std::vector<VideoInput>(); };
  92. +std::vector<AudioInput> GetAudioInputList() { return std::vector<AudioInput>(); };
  93. +std::vector<AudioOutput> GetAudioOutputList() { return std::vector<AudioOutput>(); };
  94. +}