OLD | NEW |
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 "base/bind.h" | 7 #include "base/bind.h" |
8 #include "build/build_config.h" | 8 #include "build/build_config.h" |
9 #include "base/single_thread_task_runner.h" | 9 #include "base/single_thread_task_runner.h" |
10 #include "media/base/media_log.h" | 10 #include "media/base/media_log.h" |
11 #include "media/filters/gpu_video_decoder.h" | 11 #include "media/filters/gpu_video_decoder.h" |
| 12 #include "media/filters/opus_audio_decoder.h" |
12 #include "media/renderers/audio_renderer_impl.h" | 13 #include "media/renderers/audio_renderer_impl.h" |
13 #include "media/renderers/gpu_video_accelerator_factories.h" | 14 #include "media/renderers/gpu_video_accelerator_factories.h" |
14 #include "media/renderers/renderer_impl.h" | 15 #include "media/renderers/renderer_impl.h" |
15 #include "media/renderers/video_renderer_impl.h" | 16 #include "media/renderers/video_renderer_impl.h" |
16 | 17 |
17 #if !defined(MEDIA_DISABLE_FFMPEG) | 18 #if !defined(MEDIA_DISABLE_FFMPEG) |
18 #include "media/filters/ffmpeg_audio_decoder.h" | 19 #include "media/filters/ffmpeg_audio_decoder.h" |
19 #if !defined(DISABLE_FFMPEG_VIDEO_DECODERS) | 20 #if !defined(DISABLE_FFMPEG_VIDEO_DECODERS) |
20 #include "media/filters/ffmpeg_video_decoder.h" | 21 #include "media/filters/ffmpeg_video_decoder.h" |
21 #endif | 22 #endif |
22 #endif | 23 #endif |
23 | 24 |
24 #if !defined(OS_ANDROID) || defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID) | |
25 #include "media/filters/opus_audio_decoder.h" | |
26 #endif | |
27 | |
28 #if !defined(MEDIA_DISABLE_LIBVPX) | 25 #if !defined(MEDIA_DISABLE_LIBVPX) |
29 #include "media/filters/vpx_video_decoder.h" | 26 #include "media/filters/vpx_video_decoder.h" |
30 #endif | 27 #endif |
31 | 28 |
32 namespace media { | 29 namespace media { |
33 | 30 |
34 DefaultRendererFactory::DefaultRendererFactory( | 31 DefaultRendererFactory::DefaultRendererFactory( |
35 const scoped_refptr<MediaLog>& media_log, | 32 const scoped_refptr<MediaLog>& media_log, |
36 GpuVideoAcceleratorFactories* gpu_factories, | 33 GpuVideoAcceleratorFactories* gpu_factories, |
37 const AudioHardwareConfig& audio_hardware_config) | 34 const AudioHardwareConfig& audio_hardware_config) |
(...skipping 12 matching lines...) Expand all Loading... |
50 DCHECK(audio_renderer_sink); | 47 DCHECK(audio_renderer_sink); |
51 | 48 |
52 // Create our audio decoders and renderer. | 49 // Create our audio decoders and renderer. |
53 ScopedVector<AudioDecoder> audio_decoders; | 50 ScopedVector<AudioDecoder> audio_decoders; |
54 | 51 |
55 #if !defined(MEDIA_DISABLE_FFMPEG) | 52 #if !defined(MEDIA_DISABLE_FFMPEG) |
56 audio_decoders.push_back( | 53 audio_decoders.push_back( |
57 new FFmpegAudioDecoder(media_task_runner, media_log_)); | 54 new FFmpegAudioDecoder(media_task_runner, media_log_)); |
58 #endif | 55 #endif |
59 | 56 |
60 #if !defined(OS_ANDROID) || defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID) | |
61 audio_decoders.push_back(new OpusAudioDecoder(media_task_runner)); | 57 audio_decoders.push_back(new OpusAudioDecoder(media_task_runner)); |
62 #endif | |
63 | 58 |
64 scoped_ptr<AudioRenderer> audio_renderer(new AudioRendererImpl( | 59 scoped_ptr<AudioRenderer> audio_renderer(new AudioRendererImpl( |
65 media_task_runner, audio_renderer_sink, audio_decoders.Pass(), | 60 media_task_runner, audio_renderer_sink, audio_decoders.Pass(), |
66 audio_hardware_config_, media_log_)); | 61 audio_hardware_config_, media_log_)); |
67 | 62 |
68 // Create our video decoders and renderer. | 63 // Create our video decoders and renderer. |
69 ScopedVector<VideoDecoder> video_decoders; | 64 ScopedVector<VideoDecoder> video_decoders; |
70 | 65 |
71 // |gpu_factories_| requires that its entry points be called on its | 66 // |gpu_factories_| requires that its entry points be called on its |
72 // |GetTaskRunner()|. Since |pipeline_| will own decoders created from the | 67 // |GetTaskRunner()|. Since |pipeline_| will own decoders created from the |
(...skipping 15 matching lines...) Expand all Loading... |
88 scoped_ptr<VideoRenderer> video_renderer(new VideoRendererImpl( | 83 scoped_ptr<VideoRenderer> video_renderer(new VideoRendererImpl( |
89 media_task_runner, worker_task_runner, video_renderer_sink, | 84 media_task_runner, worker_task_runner, video_renderer_sink, |
90 video_decoders.Pass(), true, gpu_factories_, media_log_)); | 85 video_decoders.Pass(), true, gpu_factories_, media_log_)); |
91 | 86 |
92 // Create renderer. | 87 // Create renderer. |
93 return scoped_ptr<Renderer>(new RendererImpl( | 88 return scoped_ptr<Renderer>(new RendererImpl( |
94 media_task_runner, audio_renderer.Pass(), video_renderer.Pass())); | 89 media_task_runner, audio_renderer.Pass(), video_renderer.Pass())); |
95 } | 90 } |
96 | 91 |
97 } // namespace media | 92 } // namespace media |
OLD | NEW |