Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: webrtc/media/engine/webrtcvoiceengine.cc

Issue 2799033006: Injectable audio encoders: Moved audio encoder, factory and builtin factory to api/. (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2004 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2004 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 20 matching lines...) Expand all
31 #include "webrtc/base/trace_event.h" 31 #include "webrtc/base/trace_event.h"
32 #include "webrtc/media/base/audiosource.h" 32 #include "webrtc/media/base/audiosource.h"
33 #include "webrtc/media/base/mediaconstants.h" 33 #include "webrtc/media/base/mediaconstants.h"
34 #include "webrtc/media/base/streamparams.h" 34 #include "webrtc/media/base/streamparams.h"
35 #include "webrtc/media/engine/adm_helpers.h" 35 #include "webrtc/media/engine/adm_helpers.h"
36 #include "webrtc/media/engine/apm_helpers.h" 36 #include "webrtc/media/engine/apm_helpers.h"
37 #include "webrtc/media/engine/payload_type_mapper.h" 37 #include "webrtc/media/engine/payload_type_mapper.h"
38 #include "webrtc/media/engine/webrtcmediaengine.h" 38 #include "webrtc/media/engine/webrtcmediaengine.h"
39 #include "webrtc/media/engine/webrtcvoe.h" 39 #include "webrtc/media/engine/webrtcvoe.h"
40 #include "webrtc/modules/audio_coding/acm2/rent_a_codec.h" 40 #include "webrtc/modules/audio_coding/acm2/rent_a_codec.h"
41 #include "webrtc/modules/audio_coding/codecs/builtin_audio_encoder_factory.h"
42 #include "webrtc/modules/audio_mixer/audio_mixer_impl.h" 41 #include "webrtc/modules/audio_mixer/audio_mixer_impl.h"
43 #include "webrtc/modules/audio_processing/include/audio_processing.h" 42 #include "webrtc/modules/audio_processing/include/audio_processing.h"
44 #include "webrtc/system_wrappers/include/field_trial.h" 43 #include "webrtc/system_wrappers/include/field_trial.h"
45 #include "webrtc/system_wrappers/include/metrics.h" 44 #include "webrtc/system_wrappers/include/metrics.h"
46 #include "webrtc/system_wrappers/include/trace.h" 45 #include "webrtc/system_wrappers/include/trace.h"
47 #include "webrtc/voice_engine/transmit_mixer.h" 46 #include "webrtc/voice_engine/transmit_mixer.h"
48 47
49 namespace cricket { 48 namespace cricket {
50 namespace { 49 namespace {
51 50
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 262
264 } // namespace 263 } // namespace
265 264
266 bool WebRtcVoiceEngine::ToCodecInst(const AudioCodec& in, 265 bool WebRtcVoiceEngine::ToCodecInst(const AudioCodec& in,
267 webrtc::CodecInst* out) { 266 webrtc::CodecInst* out) {
268 return WebRtcVoiceCodecs::ToCodecInst(in, out); 267 return WebRtcVoiceCodecs::ToCodecInst(in, out);
269 } 268 }
270 269
271 WebRtcVoiceEngine::WebRtcVoiceEngine( 270 WebRtcVoiceEngine::WebRtcVoiceEngine(
272 webrtc::AudioDeviceModule* adm, 271 webrtc::AudioDeviceModule* adm,
272 const rtc::scoped_refptr<webrtc::AudioEncoderFactory>& encoder_factory,
273 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& decoder_factory, 273 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& decoder_factory,
274 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer) 274 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer)
275 : WebRtcVoiceEngine(adm, decoder_factory, audio_mixer, new VoEWrapper()) { 275 : WebRtcVoiceEngine(adm,
276 encoder_factory,
277 decoder_factory,
278 audio_mixer,
279 new VoEWrapper()) {
276 audio_state_ = 280 audio_state_ =
277 webrtc::AudioState::Create(MakeAudioStateConfig(voe(), audio_mixer)); 281 webrtc::AudioState::Create(MakeAudioStateConfig(voe(), audio_mixer));
278 } 282 }
279 283
280 WebRtcVoiceEngine::WebRtcVoiceEngine( 284 WebRtcVoiceEngine::WebRtcVoiceEngine(
281 webrtc::AudioDeviceModule* adm, 285 webrtc::AudioDeviceModule* adm,
286 const rtc::scoped_refptr<webrtc::AudioEncoderFactory>& encoder_factory,
282 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& decoder_factory, 287 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& decoder_factory,
283 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer, 288 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer,
284 VoEWrapper* voe_wrapper) 289 VoEWrapper* voe_wrapper)
285 : adm_(adm), 290 : adm_(adm),
286 encoder_factory_(webrtc::CreateBuiltinAudioEncoderFactory()), 291 encoder_factory_(encoder_factory),
287 decoder_factory_(decoder_factory), 292 decoder_factory_(decoder_factory),
288 voe_wrapper_(voe_wrapper) { 293 voe_wrapper_(voe_wrapper) {
289 RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); 294 RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
290 LOG(LS_INFO) << "WebRtcVoiceEngine::WebRtcVoiceEngine"; 295 LOG(LS_INFO) << "WebRtcVoiceEngine::WebRtcVoiceEngine";
291 RTC_DCHECK(voe_wrapper); 296 RTC_DCHECK(voe_wrapper);
292 RTC_DCHECK(decoder_factory); 297 RTC_DCHECK(decoder_factory);
293 298
294 signal_thread_checker_.DetachFromThread(); 299 signal_thread_checker_.DetachFromThread();
295 300
296 // Load our audio codec list. 301 // Load our audio codec lists.
297 LOG(LS_INFO) << "Supported send codecs in order of preference:"; 302 LOG(LS_INFO) << "Supported send codecs in order of preference:";
298 send_codecs_ = CollectCodecs(encoder_factory_->GetSupportedEncoders()); 303 send_codecs_ = CollectCodecs(encoder_factory_->GetSupportedEncoders());
299 for (const AudioCodec& codec : send_codecs_) { 304 for (const AudioCodec& codec : send_codecs_) {
300 LOG(LS_INFO) << ToString(codec); 305 LOG(LS_INFO) << ToString(codec);
301 } 306 }
302 307
303 LOG(LS_INFO) << "Supported recv codecs in order of preference:"; 308 LOG(LS_INFO) << "Supported recv codecs in order of preference:";
304 recv_codecs_ = CollectCodecs(decoder_factory_->GetSupportedDecoders()); 309 recv_codecs_ = CollectCodecs(decoder_factory_->GetSupportedDecoders());
305 for (const AudioCodec& codec : recv_codecs_) { 310 for (const AudioCodec& codec : recv_codecs_) {
306 LOG(LS_INFO) << ToString(codec); 311 LOG(LS_INFO) << ToString(codec);
(...skipping 2045 matching lines...) Expand 10 before | Expand all | Expand 10 after
2352 ssrc); 2357 ssrc);
2353 if (it != unsignaled_recv_ssrcs_.end()) { 2358 if (it != unsignaled_recv_ssrcs_.end()) {
2354 unsignaled_recv_ssrcs_.erase(it); 2359 unsignaled_recv_ssrcs_.erase(it);
2355 return true; 2360 return true;
2356 } 2361 }
2357 return false; 2362 return false;
2358 } 2363 }
2359 } // namespace cricket 2364 } // namespace cricket
2360 2365
2361 #endif // HAVE_WEBRTC_VOICE 2366 #endif // HAVE_WEBRTC_VOICE
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698