| OLD | NEW |
| 1 /* | 1 /* |
| 2 * libjingle | 2 * libjingle |
| 3 * Copyright 2004 Google Inc. | 3 * Copyright 2004 Google Inc. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
| 6 * modification, are permitted provided that the following conditions are met: | 6 * modification, are permitted provided that the following conditions are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above copyright notice, | 8 * 1. Redistributions of source code must retain the above copyright notice, |
| 9 * this list of conditions and the following disclaimer. | 9 * this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright notice, | 10 * 2. Redistributions in binary form must reproduce the above copyright notice, |
| (...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 510 | 510 |
| 511 signal_thread_checker_.DetachFromThread(); | 511 signal_thread_checker_.DetachFromThread(); |
| 512 std::memset(&default_agc_config_, 0, sizeof(default_agc_config_)); | 512 std::memset(&default_agc_config_, 0, sizeof(default_agc_config_)); |
| 513 | 513 |
| 514 webrtc::Trace::set_level_filter(kDefaultTraceFilter); | 514 webrtc::Trace::set_level_filter(kDefaultTraceFilter); |
| 515 webrtc::Trace::SetTraceCallback(this); | 515 webrtc::Trace::SetTraceCallback(this); |
| 516 | 516 |
| 517 // Load our audio codec list. | 517 // Load our audio codec list. |
| 518 codecs_ = WebRtcVoiceCodecs::SupportedCodecs(); | 518 codecs_ = WebRtcVoiceCodecs::SupportedCodecs(); |
| 519 | 519 |
| 520 // Load our RTP Header extensions. | |
| 521 rtp_header_extensions_.push_back( | |
| 522 RtpHeaderExtension(kRtpAudioLevelHeaderExtension, | |
| 523 kRtpAudioLevelHeaderExtensionDefaultId)); | |
| 524 rtp_header_extensions_.push_back( | |
| 525 RtpHeaderExtension(kRtpAbsoluteSenderTimeHeaderExtension, | |
| 526 kRtpAbsoluteSenderTimeHeaderExtensionDefaultId)); | |
| 527 if (webrtc::field_trial::FindFullName("WebRTC-SendSideBwe") == "Enabled") { | |
| 528 rtp_header_extensions_.push_back(RtpHeaderExtension( | |
| 529 kRtpTransportSequenceNumberHeaderExtension, | |
| 530 kRtpTransportSequenceNumberHeaderExtensionDefaultId)); | |
| 531 } | |
| 532 options_ = GetDefaultEngineOptions(); | 520 options_ = GetDefaultEngineOptions(); |
| 533 voe_config_.Set<webrtc::VoicePacing>(new webrtc::VoicePacing(true)); | 521 voe_config_.Set<webrtc::VoicePacing>(new webrtc::VoicePacing(true)); |
| 534 } | 522 } |
| 535 | 523 |
| 536 WebRtcVoiceEngine::~WebRtcVoiceEngine() { | 524 WebRtcVoiceEngine::~WebRtcVoiceEngine() { |
| 537 RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); | 525 RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| 538 LOG(LS_VERBOSE) << "WebRtcVoiceEngine::~WebRtcVoiceEngine"; | 526 LOG(LS_VERBOSE) << "WebRtcVoiceEngine::~WebRtcVoiceEngine"; |
| 539 if (adm_) { | 527 if (adm_) { |
| 540 voe_wrapper_.reset(); | 528 voe_wrapper_.reset(); |
| 541 adm_->Release(); | 529 adm_->Release(); |
| (...skipping 526 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1068 unsigned int ulevel; | 1056 unsigned int ulevel; |
| 1069 return (voe_wrapper_->volume()->GetSpeechInputLevel(ulevel) != -1) ? | 1057 return (voe_wrapper_->volume()->GetSpeechInputLevel(ulevel) != -1) ? |
| 1070 static_cast<int>(ulevel) : -1; | 1058 static_cast<int>(ulevel) : -1; |
| 1071 } | 1059 } |
| 1072 | 1060 |
| 1073 const std::vector<AudioCodec>& WebRtcVoiceEngine::codecs() { | 1061 const std::vector<AudioCodec>& WebRtcVoiceEngine::codecs() { |
| 1074 RTC_DCHECK(signal_thread_checker_.CalledOnValidThread()); | 1062 RTC_DCHECK(signal_thread_checker_.CalledOnValidThread()); |
| 1075 return codecs_; | 1063 return codecs_; |
| 1076 } | 1064 } |
| 1077 | 1065 |
| 1078 const std::vector<RtpHeaderExtension>& | 1066 RtpCapabilities WebRtcVoiceEngine::GetCapabilities() const { |
| 1079 WebRtcVoiceEngine::rtp_header_extensions() const { | |
| 1080 RTC_DCHECK(signal_thread_checker_.CalledOnValidThread()); | 1067 RTC_DCHECK(signal_thread_checker_.CalledOnValidThread()); |
| 1081 return rtp_header_extensions_; | 1068 RtpCapabilities capabilities; |
| 1069 capabilities.header_extensions.push_back(RtpHeaderExtension( |
| 1070 kRtpAudioLevelHeaderExtension, kRtpAudioLevelHeaderExtensionDefaultId)); |
| 1071 capabilities.header_extensions.push_back( |
| 1072 RtpHeaderExtension(kRtpAbsoluteSenderTimeHeaderExtension, |
| 1073 kRtpAbsoluteSenderTimeHeaderExtensionDefaultId)); |
| 1074 if (webrtc::field_trial::FindFullName("WebRTC-SendSideBwe") == "Enabled") { |
| 1075 capabilities.header_extensions.push_back(RtpHeaderExtension( |
| 1076 kRtpTransportSequenceNumberHeaderExtension, |
| 1077 kRtpTransportSequenceNumberHeaderExtensionDefaultId)); |
| 1078 } |
| 1079 return capabilities; |
| 1082 } | 1080 } |
| 1083 | 1081 |
| 1084 int WebRtcVoiceEngine::GetLastEngineError() { | 1082 int WebRtcVoiceEngine::GetLastEngineError() { |
| 1085 RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); | 1083 RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
| 1086 return voe_wrapper_->error(); | 1084 return voe_wrapper_->error(); |
| 1087 } | 1085 } |
| 1088 | 1086 |
| 1089 void WebRtcVoiceEngine::Print(webrtc::TraceLevel level, const char* trace, | 1087 void WebRtcVoiceEngine::Print(webrtc::TraceLevel level, const char* trace, |
| 1090 int length) { | 1088 int length) { |
| 1091 // Note: This callback can happen on any thread! | 1089 // Note: This callback can happen on any thread! |
| (...skipping 1546 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2638 } | 2636 } |
| 2639 } else { | 2637 } else { |
| 2640 LOG(LS_INFO) << "Stopping playout for channel #" << channel; | 2638 LOG(LS_INFO) << "Stopping playout for channel #" << channel; |
| 2641 engine()->voe()->base()->StopPlayout(channel); | 2639 engine()->voe()->base()->StopPlayout(channel); |
| 2642 } | 2640 } |
| 2643 return true; | 2641 return true; |
| 2644 } | 2642 } |
| 2645 } // namespace cricket | 2643 } // namespace cricket |
| 2646 | 2644 |
| 2647 #endif // HAVE_WEBRTC_VOICE | 2645 #endif // HAVE_WEBRTC_VOICE |
| OLD | NEW |