OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 } | 444 } |
445 // TODO(ronghuawu): what to do with targetBitrate. | 445 // TODO(ronghuawu): what to do with targetBitrate. |
446 | 446 |
447 stream_codec->startBitrate = start_bitrate_kbps; | 447 stream_codec->startBitrate = start_bitrate_kbps; |
448 } | 448 } |
449 | 449 |
450 bool SimulcastEncoderAdapter::Initialized() const { | 450 bool SimulcastEncoderAdapter::Initialized() const { |
451 return !streaminfos_.empty(); | 451 return !streaminfos_.empty(); |
452 } | 452 } |
453 | 453 |
454 void SimulcastEncoderAdapter::OnDroppedFrame() { | |
455 streaminfos_[0].encoder->OnDroppedFrame(); | |
456 } | |
457 | |
458 bool SimulcastEncoderAdapter::SupportsNativeHandle() const { | 454 bool SimulcastEncoderAdapter::SupportsNativeHandle() const { |
459 // We should not be calling this method before streaminfos_ are configured. | 455 // We should not be calling this method before streaminfos_ are configured. |
460 RTC_DCHECK(!streaminfos_.empty()); | 456 RTC_DCHECK(!streaminfos_.empty()); |
461 for (const auto& streaminfo : streaminfos_) { | 457 for (const auto& streaminfo : streaminfos_) { |
462 if (!streaminfo.encoder->SupportsNativeHandle()) | 458 if (!streaminfo.encoder->SupportsNativeHandle()) |
463 return false; | 459 return false; |
464 } | 460 } |
465 return true; | 461 return true; |
466 } | 462 } |
467 | 463 |
| 464 VideoEncoder::ScalingSettings SimulcastEncoderAdapter::GetScalingSettings() |
| 465 const { |
| 466 // Turn off quality scaling for simulcast. |
| 467 if (NumberOfStreams(codec_) != 1) |
| 468 return VideoEncoder::ScalingSettings(false); |
| 469 return streaminfos_[0].encoder->GetScalingSettings(); |
| 470 } |
| 471 |
468 const char* SimulcastEncoderAdapter::ImplementationName() const { | 472 const char* SimulcastEncoderAdapter::ImplementationName() const { |
469 return implementation_name_.c_str(); | 473 return implementation_name_.c_str(); |
470 } | 474 } |
471 | 475 |
472 } // namespace webrtc | 476 } // namespace webrtc |
OLD | NEW |