| Index: media/audio/audio_manager_base.h
|
| diff --git a/media/audio/audio_manager_base.h b/media/audio/audio_manager_base.h
|
| index b3100cf6c507bb6cb6af2086806356cc3c6de15a..a80f63c1aef6b8b5150aadb7a7b077907f37bf4c 100644
|
| --- a/media/audio/audio_manager_base.h
|
| +++ b/media/audio/audio_manager_base.h
|
| @@ -16,6 +16,7 @@
|
| #include "base/observer_list.h"
|
| #include "base/threading/thread.h"
|
| #include "build/build_config.h"
|
| +#include "media/audio/audio_debug_recording_manager.h"
|
| #include "media/audio/audio_device_name.h"
|
| #include "media/audio/audio_manager.h"
|
| #include "media/audio/audio_output_dispatcher.h"
|
| @@ -67,6 +68,8 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager {
|
| const std::string& input_device_id) override;
|
| std::unique_ptr<AudioLog> CreateAudioLog(
|
| AudioLogFactory::AudioComponent component) override;
|
| + void EnableOutputDebugRecording(const base::FilePath& base_file_name) final;
|
| + void DisableOutputDebugRecording() final;
|
|
|
| void SetMaxStreamCountForTesting(int max_input, int max_output) final;
|
|
|
| @@ -153,12 +156,23 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager {
|
| // Implementations that don't yet support this should return an empty string.
|
| virtual std::string GetDefaultOutputDeviceID();
|
|
|
| + virtual std::unique_ptr<AudioDebugRecordingManager>
|
| + CreateAudioDebugRecordingManager(
|
| + scoped_refptr<base::SingleThreadTaskRunner> task_runner,
|
| + scoped_refptr<base::SingleThreadTaskRunner> file_task_runner);
|
| +
|
| private:
|
| + FRIEND_TEST_ALL_PREFIXES(AudioManagerTest, AudioDebugRecording);
|
| +
|
| struct DispatcherParams;
|
| typedef ScopedVector<DispatcherParams> AudioOutputDispatchers;
|
|
|
| class CompareByParams;
|
|
|
| + // AudioManager:
|
| + void InitializeOutputDebugRecording(
|
| + scoped_refptr<base::SingleThreadTaskRunner> file_task_runner) final;
|
| +
|
| // These functions assign group ids to devices based on their device ids.
|
| // The default implementation is an attempt to do this based on
|
| // GetAssociatedOutputDeviceID. Must be called on the audio worker thread
|
| @@ -189,6 +203,9 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager {
|
| // Proxy for creating AudioLog objects.
|
| AudioLogFactory* const audio_log_factory_;
|
|
|
| + // Debug recording manager.
|
| + std::unique_ptr<AudioDebugRecordingManager> debug_recording_manager_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(AudioManagerBase);
|
| };
|
|
|
|
|