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 #include "media/audio/win/audio_low_latency_input_win.h" | 5 #include "media/audio/win/audio_low_latency_input_win.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
10 #include "media/audio/win/audio_manager_win.h" | 10 #include "media/audio/win/audio_manager_win.h" |
(...skipping 335 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
346 CLSCTX_INPROC_SERVER, | 346 CLSCTX_INPROC_SERVER, |
347 NULL, | 347 NULL, |
348 audio_client.ReceiveVoid()); | 348 audio_client.ReceiveVoid()); |
349 return SUCCEEDED(hr) ? audio_client->GetMixFormat(device_format) : hr; | 349 return SUCCEEDED(hr) ? audio_client->GetMixFormat(device_format) : hr; |
350 } | 350 } |
351 | 351 |
352 void WASAPIAudioInputStream::Run() { | 352 void WASAPIAudioInputStream::Run() { |
353 ScopedCOMInitializer com_init(ScopedCOMInitializer::kMTA); | 353 ScopedCOMInitializer com_init(ScopedCOMInitializer::kMTA); |
354 | 354 |
355 // Increase the thread priority. | 355 // Increase the thread priority. |
356 capture_thread_->SetThreadPriority(base::kThreadPriority_RealtimeAudio); | 356 capture_thread_->SetThreadPriority(base::ThreadPriority::REALTIME_AUDIO); |
357 | 357 |
358 // Enable MMCSS to ensure that this thread receives prioritized access to | 358 // Enable MMCSS to ensure that this thread receives prioritized access to |
359 // CPU resources. | 359 // CPU resources. |
360 DWORD task_index = 0; | 360 DWORD task_index = 0; |
361 HANDLE mm_task = avrt::AvSetMmThreadCharacteristics(L"Pro Audio", | 361 HANDLE mm_task = avrt::AvSetMmThreadCharacteristics(L"Pro Audio", |
362 &task_index); | 362 &task_index); |
363 bool mmcss_is_ok = | 363 bool mmcss_is_ok = |
364 (mm_task && avrt::AvSetMmThreadPriority(mm_task, AVRT_PRIORITY_CRITICAL)); | 364 (mm_task && avrt::AvSetMmThreadPriority(mm_task, AVRT_PRIORITY_CRITICAL)); |
365 if (!mmcss_is_ok) { | 365 if (!mmcss_is_ok) { |
366 // Failed to enable MMCSS on this thread. It is not fatal but can lead | 366 // Failed to enable MMCSS on this thread. It is not fatal but can lead |
(...skipping 395 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
762 return hr; | 762 return hr; |
763 | 763 |
764 // Obtain a reference to the ISimpleAudioVolume interface which enables | 764 // Obtain a reference to the ISimpleAudioVolume interface which enables |
765 // us to control the master volume level of an audio session. | 765 // us to control the master volume level of an audio session. |
766 hr = audio_client_->GetService(__uuidof(ISimpleAudioVolume), | 766 hr = audio_client_->GetService(__uuidof(ISimpleAudioVolume), |
767 simple_audio_volume_.ReceiveVoid()); | 767 simple_audio_volume_.ReceiveVoid()); |
768 return hr; | 768 return hr; |
769 } | 769 } |
770 | 770 |
771 } // namespace media | 771 } // namespace media |
OLD | NEW |