This repository was archived by the owner on Oct 25, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +20
-4
lines changed Expand file tree Collapse file tree 2 files changed +20
-4
lines changed Original file line number Diff line number Diff line change @@ -227,6 +227,13 @@ static_library("owt_sdk_base") {
227
227
228
228
defines = [ " USE_BUILTIN_SW_CODECS" ]
229
229
230
+ if (owt_cg_server ) {
231
+ defines += [ " OWT_CG_SERVER" ]
232
+ }
233
+ if (owt_cg_client ) {
234
+ defines += [ " OWT_CG_CLIENT" ]
235
+ }
236
+
230
237
if (owt_msdk_header_root != " " ) {
231
238
include_dirs += [ owt_msdk_header_root ]
232
239
}
@@ -295,7 +302,7 @@ static_library("owt_sdk_base") {
295
302
" sdk/base/win/videorendererd3d11.cc" ,
296
303
" sdk/base/win/videorendererd3d11.h" ,
297
304
]
298
- if (owt_msdk_header_root != " " || owt_ffmpeg_root != " " ) {
305
+ if (owt_msdk_header_root != " " || owt_ffmpeg_root != " " || owt_cg_server ) {
299
306
sources += [
300
307
" sdk/base/win/externalvideodecoderfactory.cc" ,
301
308
" sdk/base/win/externalvideodecoderfactory.h" ,
@@ -420,6 +427,9 @@ static_library("owt_sdk_p2p") {
420
427
if (owt_cg_server ) {
421
428
defines = [ " OWT_CG_SERVER" ]
422
429
}
430
+ if (owt_cg_client ) {
431
+ defines = [ " OWT_CG_CLIENT" ]
432
+ }
423
433
}
424
434
static_library (" owt_sdk_conf" ) {
425
435
deps = [
Original file line number Diff line number Diff line change @@ -190,7 +190,11 @@ void PeerConnectionDependencyFactory::
190
190
if (encoded_frame_) {
191
191
encoder_factory.reset (new EncodedVideoEncoderFactory ());
192
192
} else if (render_hardware_acceleration_enabled_) {
193
- #if defined(WEBRTC_WIN) && defined(OWT_USE_MSDK)
193
+ #if defined(OWT_CG_CLIENT)
194
+ // CG client app takes care of external encoder. If it's expected to receive
195
+ // video streams, an encoder must be provided.
196
+ encoder_factory.reset (new ExternalVideoEncoderFactory ());
197
+ #elif defined(WEBRTC_WIN) && defined(OWT_USE_MSDK)
194
198
encoder_factory.reset (new ExternalVideoEncoderFactory ());
195
199
#else
196
200
// For Linux HW encoder pending verification.
@@ -204,10 +208,12 @@ void PeerConnectionDependencyFactory::
204
208
decoder_factory.reset (new CustomizedVideoDecoderFactory (
205
209
GlobalConfiguration::GetCustomizedVideoDecoder ()));
206
210
} else if (render_hardware_acceleration_enabled_) {
207
- #if defined(OWT_USE_MSDK) || defined(OWT_USE_FFMPEG)
211
+ #if defined(OWT_USE_MSDK) || defined(OWT_USE_FFMPEG) || defined(OWT_CG_SERVER)
208
212
#if defined(WEBRTC_WIN)
209
213
decoder_factory.reset (new ExternalVideoDecoderFactory (nullptr ));
210
- #else
214
+ #elif !defined(OWT_CG_SERVER)
215
+ // Linux CG server is supposed to have external decoder so it can receives
216
+ // video streams from client.
211
217
decoder_factory.reset (new ExternalVideoDecoderFactory ());
212
218
#endif
213
219
#else
You can’t perform that action at this time.
0 commit comments