Index: media/audio/win/audio_manager_win.cc |
diff --git a/media/audio/win/audio_manager_win.cc b/media/audio/win/audio_manager_win.cc |
index 119ac3a2f4a2f078ce44135e499de67498f46a57..bf1776bcd4c7137f6b202f467ac64d9ca616bef3 100644 |
--- a/media/audio/win/audio_manager_win.cc |
+++ b/media/audio/win/audio_manager_win.cc |
@@ -131,13 +131,9 @@ static int NumberOfWaveOutBuffers() { |
return (base::win::GetVersion() == base::win::VERSION_VISTA) ? 4 : 3; |
} |
-AudioManagerWin::AudioManagerWin( |
- scoped_refptr<base::SingleThreadTaskRunner> task_runner, |
- scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner, |
- AudioLogFactory* audio_log_factory) |
- : AudioManagerBase(std::move(task_runner), |
- std::move(worker_task_runner), |
- audio_log_factory) { |
+AudioManagerWin::AudioManagerWin(std::unique_ptr<AudioThread> audio_thread, |
+ AudioLogFactory* audio_log_factory) |
+ : AudioManagerBase(std::move(audio_thread), audio_log_factory) { |
// |CoreAudioUtil::IsSupported()| uses static variables to avoid doing |
// multiple initializations. This is however not thread safe. |
// So, here we call it explicitly before we kick off the audio thread |
@@ -157,8 +153,11 @@ AudioManagerWin::AudioManagerWin( |
base::Unretained(this))); |
} |
-AudioManagerWin::~AudioManagerWin() { |
- Shutdown(); |
+AudioManagerWin::~AudioManagerWin() = default; |
+ |
+void AudioManagerWin::ShutdownOnAudioThread() { |
+ AudioManagerBase::ShutdownOnAudioThread(); |
+ output_device_listener_.reset(); |
o1ka
2017/05/10 15:57:57
Add a comment why it's done here?
alokp
2017/05/10 18:04:03
Done.
|
} |
bool AudioManagerWin::HasAudioOutputDevices() { |
@@ -464,13 +463,11 @@ AudioParameters AudioManagerWin::GetPreferredOutputStreamParameters( |
} |
// static |
-ScopedAudioManagerPtr CreateAudioManager( |
- scoped_refptr<base::SingleThreadTaskRunner> task_runner, |
- scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner, |
+std::unique_ptr<AudioManager> CreateAudioManager( |
+ std::unique_ptr<AudioThread> audio_thread, |
AudioLogFactory* audio_log_factory) { |
- return ScopedAudioManagerPtr( |
- new AudioManagerWin(std::move(task_runner), std::move(worker_task_runner), |
- audio_log_factory)); |
+ return base::MakeUnique<AudioManagerWin>(std::move(audio_thread), |
+ audio_log_factory); |
} |
} // namespace media |