Index: media/audio/audio_manager.h |
diff --git a/media/audio/audio_manager.h b/media/audio/audio_manager.h |
index c5a7cdd949b96f912b1ca50aca03da4439bae293..622b5e6549b845210b7db496140db8f16b7db7c4 100644 |
--- a/media/audio/audio_manager.h |
+++ b/media/audio/audio_manager.h |
@@ -15,6 +15,7 @@ |
#include "base/strings/string16.h" |
#include "build/build_config.h" |
#include "media/audio/audio_device_description.h" |
+#include "media/audio/audio_file_writer.h" |
#include "media/audio/audio_logging.h" |
#include "media/base/audio_parameters.h" |
@@ -63,7 +64,8 @@ class MEDIA_EXPORT AudioManager { |
static ScopedAudioManagerPtr Create( |
scoped_refptr<base::SingleThreadTaskRunner> task_runner, |
scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner, |
- AudioLogFactory* audio_log_factory); |
+ AudioLogFactory* audio_log_factory, |
+ CreateAudioFileWriterCallback create_audio_file_writer_callback); |
// A convenience wrapper of AudioManager::Create for testing. |
// The given |task_runner| is shared for both audio io and heavyweight tasks. |
@@ -248,6 +250,18 @@ class MEDIA_EXPORT AudioManager { |
virtual std::unique_ptr<AudioLog> CreateAudioLog( |
AudioLogFactory::AudioComponent component) = 0; |
+ // Create a new AudioFileWriter object for recording audio. |
+ virtual std::unique_ptr<AudioFileWriter> CreateAudioFileWriter( |
+ const AudioParameters& params) = 0; |
+ |
+ // Enable output debug recording. |
+ // TODO(grunell): Control input debug recording via these functions too. |
+ virtual void EnableOutputDebugRecording( |
+ const base::FilePath& base_file_name) = 0; |
+ |
+ // Disable output debug recording. |
+ virtual void DisableOutputDebugRecording() = 0; |
+ |
// Gets the name of the audio manager (e.g., Windows, Mac, PulseAudio). |
virtual const char* GetName() = 0; |