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

Side by Side Diff: media/renderers/default_renderer_factory.cc

Issue 1651673002: Add MediaCodecAudioDecoder implementation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removed CDM stuff, fixed Opus Created 4 years, 10 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 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "media/renderers/default_renderer_factory.h" 5 #include "media/renderers/default_renderer_factory.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/single_thread_task_runner.h" 10 #include "base/single_thread_task_runner.h"
(...skipping 10 matching lines...) Expand all
21 #include "media/filters/ffmpeg_audio_decoder.h" 21 #include "media/filters/ffmpeg_audio_decoder.h"
22 #if !defined(DISABLE_FFMPEG_VIDEO_DECODERS) 22 #if !defined(DISABLE_FFMPEG_VIDEO_DECODERS)
23 #include "media/filters/ffmpeg_video_decoder.h" 23 #include "media/filters/ffmpeg_video_decoder.h"
24 #endif 24 #endif
25 #endif 25 #endif
26 26
27 #if !defined(MEDIA_DISABLE_LIBVPX) 27 #if !defined(MEDIA_DISABLE_LIBVPX)
28 #include "media/filters/vpx_video_decoder.h" 28 #include "media/filters/vpx_video_decoder.h"
29 #endif 29 #endif
30 30
31 #if defined(OS_ANDROID)
32 #include "media/filters/android/android_audio_decoder.h"
33 #endif
34
31 namespace media { 35 namespace media {
32 36
33 DefaultRendererFactory::DefaultRendererFactory( 37 DefaultRendererFactory::DefaultRendererFactory(
34 const scoped_refptr<MediaLog>& media_log, 38 const scoped_refptr<MediaLog>& media_log,
35 GpuVideoAcceleratorFactories* gpu_factories, 39 GpuVideoAcceleratorFactories* gpu_factories,
36 const AudioHardwareConfig& audio_hardware_config) 40 const AudioHardwareConfig& audio_hardware_config)
37 : media_log_(media_log), 41 : media_log_(media_log),
38 gpu_factories_(gpu_factories), 42 gpu_factories_(gpu_factories),
39 audio_hardware_config_(audio_hardware_config) {} 43 audio_hardware_config_(audio_hardware_config) {}
40 44
41 DefaultRendererFactory::~DefaultRendererFactory() { 45 DefaultRendererFactory::~DefaultRendererFactory() {
42 } 46 }
43 47
44 scoped_ptr<Renderer> DefaultRendererFactory::CreateRenderer( 48 scoped_ptr<Renderer> DefaultRendererFactory::CreateRenderer(
45 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner, 49 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner,
46 const scoped_refptr<base::TaskRunner>& worker_task_runner, 50 const scoped_refptr<base::TaskRunner>& worker_task_runner,
47 AudioRendererSink* audio_renderer_sink, 51 AudioRendererSink* audio_renderer_sink,
48 VideoRendererSink* video_renderer_sink) { 52 VideoRendererSink* video_renderer_sink) {
49 DCHECK(audio_renderer_sink); 53 DCHECK(audio_renderer_sink);
50 54
51 // Create our audio decoders and renderer. 55 // Create our audio decoders and renderer.
52 ScopedVector<AudioDecoder> audio_decoders; 56 ScopedVector<AudioDecoder> audio_decoders;
53 57
58 #if defined(OS_ANDROID)
DaleCurtis 2016/02/04 23:15:31 This should be pushed after FFmpeg/Opus so they ar
Tima Vaisburd 2016/02/06 03:54:12 I just forgot to remove debugging code. I'm keepin
59 DVLOG(1) << __FUNCTION__ << ": adding AndroidAudioDecoder";
60 audio_decoders.push_back(new AndroidAudioDecoder(media_task_runner));
xhwang 2016/02/05 21:37:37 The DefaultRendererFactory will be used in the ren
Tima Vaisburd 2016/02/06 03:54:12 Acknowledged.
61 #endif
62
54 #if !defined(MEDIA_DISABLE_FFMPEG) 63 #if !defined(MEDIA_DISABLE_FFMPEG)
64 DVLOG(1) << __FUNCTION__ << ": adding FFMpegAudioDecoder";
55 audio_decoders.push_back( 65 audio_decoders.push_back(
56 new FFmpegAudioDecoder(media_task_runner, media_log_)); 66 new FFmpegAudioDecoder(media_task_runner, media_log_));
57 #endif 67 #endif
58 68
69 DVLOG(1) << __FUNCTION__ << ": adding OpusAudioDecoder";
xhwang 2016/02/05 21:37:37 nit: It's not very interesting to know what decode
Tima Vaisburd 2016/02/06 03:54:12 As I said before, I just forgot to remove the debu
59 audio_decoders.push_back(new OpusAudioDecoder(media_task_runner)); 70 audio_decoders.push_back(new OpusAudioDecoder(media_task_runner));
60 71
61 scoped_ptr<AudioRenderer> audio_renderer(new AudioRendererImpl( 72 scoped_ptr<AudioRenderer> audio_renderer(new AudioRendererImpl(
62 media_task_runner, audio_renderer_sink, std::move(audio_decoders), 73 media_task_runner, audio_renderer_sink, std::move(audio_decoders),
63 audio_hardware_config_, media_log_)); 74 audio_hardware_config_, media_log_));
64 75
65 // Create our video decoders and renderer. 76 // Create our video decoders and renderer.
66 ScopedVector<VideoDecoder> video_decoders; 77 ScopedVector<VideoDecoder> video_decoders;
67 78
68 // |gpu_factories_| requires that its entry points be called on its 79 // |gpu_factories_| requires that its entry points be called on its
(...skipping 16 matching lines...) Expand all
85 scoped_ptr<VideoRenderer> video_renderer(new VideoRendererImpl( 96 scoped_ptr<VideoRenderer> video_renderer(new VideoRendererImpl(
86 media_task_runner, worker_task_runner, video_renderer_sink, 97 media_task_runner, worker_task_runner, video_renderer_sink,
87 std::move(video_decoders), true, gpu_factories_, media_log_)); 98 std::move(video_decoders), true, gpu_factories_, media_log_));
88 99
89 // Create renderer. 100 // Create renderer.
90 return scoped_ptr<Renderer>(new RendererImpl( 101 return scoped_ptr<Renderer>(new RendererImpl(
91 media_task_runner, std::move(audio_renderer), std::move(video_renderer))); 102 media_task_runner, std::move(audio_renderer), std::move(video_renderer)));
92 } 103 }
93 104
94 } // namespace media 105 } // namespace media
OLDNEW
« media/filters/android/android_audio_decoder.cc ('K') | « media/media.gyp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698