OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef CONTENT_RENDERER_MEDIA_AUDIO_RENDERER_MIXER_MANAGER_H_ | 5 #ifndef CONTENT_RENDERER_MEDIA_AUDIO_RENDERER_MIXER_MANAGER_H_ |
6 #define CONTENT_RENDERER_MEDIA_AUDIO_RENDERER_MIXER_MANAGER_H_ | 6 #define CONTENT_RENDERER_MEDIA_AUDIO_RENDERER_MIXER_MANAGER_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <string> | 9 #include <string> |
10 #include <utility> | 10 #include <utility> |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
114 struct AudioRendererMixerReference { | 114 struct AudioRendererMixerReference { |
115 media::AudioRendererMixer* mixer; | 115 media::AudioRendererMixer* mixer; |
116 int ref_count; | 116 int ref_count; |
117 }; | 117 }; |
118 typedef std::map<MixerKey, AudioRendererMixerReference, MixerKeyCompare> | 118 typedef std::map<MixerKey, AudioRendererMixerReference, MixerKeyCompare> |
119 AudioRendererMixerMap; | 119 AudioRendererMixerMap; |
120 | 120 |
121 // Overrides the AudioRendererSink implementation for unit testing. | 121 // Overrides the AudioRendererSink implementation for unit testing. |
122 void SetAudioRendererSinkForTesting(media::AudioRendererSink* sink); | 122 void SetAudioRendererSinkForTesting(media::AudioRendererSink* sink); |
123 | 123 |
| 124 // A helper to get hardware output parameters in the absence of |
| 125 // AudioOutputDevice. |
| 126 static media::AudioParameters GetHardwareOutputParams( |
| 127 int render_frame_id, |
| 128 int session_id, |
| 129 const std::string& device_id, |
| 130 const url::Origin& security_origin); |
| 131 |
124 // Active mixers. | 132 // Active mixers. |
125 AudioRendererMixerMap mixers_; | 133 AudioRendererMixerMap mixers_; |
126 base::Lock mixers_lock_; | 134 base::Lock mixers_lock_; |
127 | 135 |
128 media::AudioRendererSink* sink_for_testing_; | 136 media::AudioRendererSink* sink_for_testing_; |
129 | 137 |
130 DISALLOW_COPY_AND_ASSIGN(AudioRendererMixerManager); | 138 DISALLOW_COPY_AND_ASSIGN(AudioRendererMixerManager); |
131 }; | 139 }; |
132 | 140 |
133 } // namespace content | 141 } // namespace content |
134 | 142 |
135 #endif // CONTENT_RENDERER_MEDIA_AUDIO_RENDERER_MIXER_MANAGER_H_ | 143 #endif // CONTENT_RENDERER_MEDIA_AUDIO_RENDERER_MIXER_MANAGER_H_ |
OLD | NEW |