Skip to content
This repository was archived by the owner on Oct 25, 2024. It is now read-only.

Commit ea40a6c

Browse files
authored
Fix build issues for iOS. (#658)
1 parent cbae0dc commit ea40a6c

File tree

5 files changed

+21
-28
lines changed

5 files changed

+21
-28
lines changed

talk/owt/BUILD.gn

Lines changed: 4 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@ static_library("owt_sdk_base") {
119119
"sdk/base/commontypes.cc",
120120
"sdk/base/connectionstats.cc",
121121
"sdk/base/cursorutils.cc",
122+
"sdk/base/customizedaudiocapturer.cc",
123+
"sdk/base/customizedaudiocapturer.h",
124+
"sdk/base/customizedaudiodevicemodule.cc",
125+
"sdk/base/customizedaudiodevicemodule.h",
122126
"sdk/base/deviceutils.cc",
123127
"sdk/base/encodedstreamproviderwrapper.cc",
124128
"sdk/base/encodedstreamproviderwrapper.h",
@@ -232,10 +236,6 @@ static_library("owt_sdk_base") {
232236
defines += [ "OWT_CUSTOM_AVIO" ]
233237
}
234238
if (is_ios) {
235-
sources += [
236-
"sdk/base/ios/networkmonitorios.cc",
237-
"sdk/base/ios/networkmonitorios.h",
238-
]
239239
public_deps += [ "//third_party/webrtc/sdk:framework_objc+link" ]
240240
}
241241

@@ -338,14 +338,6 @@ static_library("owt_sdk_base") {
338338
]
339339
}
340340

341-
if (is_win || is_linux) {
342-
sources += [
343-
"sdk/base/customizedaudiocapturer.cc",
344-
"sdk/base/customizedaudiocapturer.h",
345-
"sdk/base/customizedaudiodevicemodule.cc",
346-
"sdk/base/customizedaudiodevicemodule.h",
347-
]
348-
}
349341
if (is_linux && use_sysroot) {
350342
configs += [ "//third_party/webrtc/modules/desktop_capture:gio" ]
351343
}

talk/owt/sdk/base/peerconnectiondependencyfactory.cc

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
//
33
// SPDX-License-Identifier: Apache-2.0
44
//
5-
#if defined(WEBRTC_WIN) || defined(WEBRTC_LINUX)
65
#include "talk/owt/sdk/base/customizedaudiodevicemodule.h"
7-
#endif
86
#include "talk/owt/sdk/base/encodedvideoencoderfactory.h"
97
#include "talk/owt/sdk/base/peerconnectiondependencyfactory.h"
108
#include "webrtc/api/audio_codecs/builtin_audio_decoder_factory.h"
@@ -180,8 +178,8 @@ void PeerConnectionDependencyFactory::
180178
network_thread->socketserver());
181179
network_manager_ = std::make_shared<rtc::BasicNetworkManager>(
182180
network_thread->socketserver());
183-
std::unique_ptr<VideoEncoderFactory> encoder_factory;
184-
std::unique_ptr<VideoDecoderFactory> decoder_factory;
181+
std::unique_ptr<webrtc::VideoEncoderFactory> encoder_factory;
182+
std::unique_ptr<webrtc::VideoDecoderFactory> decoder_factory;
185183
#if defined(WEBRTC_IOS)
186184
encoder_factory = ObjcVideoCodecFactory::CreateObjcVideoEncoderFactory();
187185
decoder_factory = ObjcVideoCodecFactory::CreateObjcVideoDecoderFactory();
@@ -201,7 +199,6 @@ void PeerConnectionDependencyFactory::
201199
} else {
202200
encoder_factory = webrtc::CreateBuiltinVideoEncoderFactory();
203201
}
204-
#endif
205202

206203
if (GlobalConfiguration::GetCustomizedVideoDecoderEnabled()) {
207204
decoder_factory.reset(new CustomizedVideoDecoderFactory(
@@ -215,6 +212,7 @@ void PeerConnectionDependencyFactory::
215212
} else {
216213
decoder_factory = webrtc::CreateBuiltinVideoDecoderFactory();
217214
}
215+
#endif
218216
// If still video factory is not in place, use internal factory.
219217
if (!encoder_factory.get()) {
220218
encoder_factory = webrtc::CreateBuiltinVideoEncoderFactory();
@@ -248,7 +246,7 @@ void PeerConnectionDependencyFactory::
248246
}
249247
#if defined(WEBRTC_IOS)
250248
pc_factory_ = webrtc::CreatePeerConnectionFactory(
251-
network_thread, worker_thread, signaling_thread, adm,
249+
network_thread.get(), worker_thread.get(), signaling_thread.get(), adm,
252250
webrtc::CreateBuiltinAudioEncoderFactory(),
253251
webrtc::CreateBuiltinAudioDecoderFactory(), std::move(encoder_factory),
254252
std::move(decoder_factory), nullptr,
@@ -365,13 +363,11 @@ rtc::Thread* PeerConnectionDependencyFactory::SignalingThreadForTesting() {
365363
return signaling_thread.get();
366364
}
367365

368-
#if defined(WEBRTC_WIN) || defined(WEBRTC_LINUX)
369366
scoped_refptr<webrtc::AudioDeviceModule> PeerConnectionDependencyFactory::
370367
CreateCustomizedAudioDeviceModuleOnCurrentThread() {
371368
return CustomizedAudioDeviceModule::Create(
372369
GlobalConfiguration::GetAudioFrameGenerator());
373370
}
374-
#endif
375371

376372
} // namespace base
377373
} // namespace owt

talk/owt/sdk/base/peerconnectiondependencyfactory.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,9 @@ class PeerConnectionDependencyFactory : public rtc::RefCountInterface {
7373
CreatePeerConnectionOnCurrentThread(
7474
const webrtc::PeerConnectionInterface::RTCConfiguration& config,
7575
webrtc::PeerConnectionObserver* observer);
76-
#if defined(WEBRTC_WIN) || defined(WEBRTC_LINUX)
77-
rtc::scoped_refptr<webrtc::AudioDeviceModule> CreateCustomizedAudioDeviceModuleOnCurrentThread();
78-
#endif
76+
rtc::scoped_refptr<webrtc::AudioDeviceModule>
77+
CreateCustomizedAudioDeviceModuleOnCurrentThread();
78+
7979
scoped_refptr<PeerConnectionFactoryInterface> pc_factory_;
8080
static scoped_refptr<PeerConnectionDependencyFactory>
8181
dependency_factory_; // Get() always return this instance.

talk/owt/sdk/include/cpp/owt/base/globalconfiguration.h

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,7 @@ class OWT_EXPORT GlobalConfiguration {
238238
return;
239239
h264_temporal_layers_ = layers;
240240
}
241+
#if defined(WEBRTC_WIN) || defined(WEBRTC_LINUX)
241242
/**
242243
@brief This function sets the customized video decoder to decode the encoded images.
243244
@param Customized video decoder
@@ -246,6 +247,7 @@ class OWT_EXPORT GlobalConfiguration {
246247
std::unique_ptr<VideoDecoderInterface> external_video_decoder) {
247248
video_decoder_ = std::move(external_video_decoder);
248249
}
250+
#endif
249251
/**
250252
@breif This function disables/enables auto echo cancellation.
251253
@details When it is enabled, SDK will turn on AEC functionality.
@@ -438,18 +440,19 @@ class OWT_EXPORT GlobalConfiguration {
438440
static bool encoded_frame_;
439441
static int delay_based_bwe_weight_;
440442
static std::unique_ptr<AudioFrameGeneratorInterface> audio_frame_generator_;
443+
/**
444+
@brief This function returns the weight of delay based BWE in overall
445+
bandwidth estimation.
446+
*/
447+
static int GetDelayBasedBweWeight() { return delay_based_bwe_weight_; }
448+
#if defined(WEBRTC_WIN) || defined(WEBRTC_LINUX)
441449
/**
442450
@brief This function returns flag indicating whether customized video decoder is enabled or not
443451
@return Boolean flag indicating whether customized video decoder is enabled or not
444452
*/
445453
static bool GetCustomizedVideoDecoderEnabled() {
446454
return video_decoder_ ? true : false;
447455
}
448-
/**
449-
@brief This function returns the weight of delay based BWE in overall
450-
bandwidth estimation.
451-
*/
452-
static int GetDelayBasedBweWeight() { return delay_based_bwe_weight_; }
453456
/**
454457
@brief This function gets customized video decoder
455458
@return Customized video decoder
@@ -461,6 +464,7 @@ class OWT_EXPORT GlobalConfiguration {
461464
* Customized video decoder. Default is nullptr.
462465
*/
463466
static std::unique_ptr<VideoDecoderInterface> video_decoder_;
467+
#endif
464468

465469
static AudioProcessingSettings audio_processing_settings_;
466470

talk/owt/sdk/p2p/objc/OWTP2PPeerConnectionChannel.mm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ - (void)send:(NSString*)message
121121
onFailure:(void (^)(NSError*))onFailure {
122122
_nativeChannel->Send(
123123
[message UTF8String],
124+
true,
124125
[=]() {
125126
if (onSuccess != nil)
126127
onSuccess();

0 commit comments

Comments
 (0)