Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(89)

Side by Side Diff: media/audio/audio_manager_base.h

Issue 1864483002: Forward output glitch information from stream WebRTC log (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « media/audio/audio_manager.h ('k') | media/audio/audio_manager_base.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 MEDIA_AUDIO_AUDIO_MANAGER_BASE_H_ 5 #ifndef MEDIA_AUDIO_AUDIO_MANAGER_BASE_H_
6 #define MEDIA_AUDIO_AUDIO_MANAGER_BASE_H_ 6 #define MEDIA_AUDIO_AUDIO_MANAGER_BASE_H_
7 7
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 20 matching lines...) Expand all
31 public: 31 public:
32 ~AudioManagerBase() override; 32 ~AudioManagerBase() override;
33 33
34 // AudioManager: 34 // AudioManager:
35 base::string16 GetAudioInputDeviceModel() override; 35 base::string16 GetAudioInputDeviceModel() override;
36 void ShowAudioInputSettings() override; 36 void ShowAudioInputSettings() override;
37 void GetAudioInputDeviceNames(AudioDeviceNames* device_names) override; 37 void GetAudioInputDeviceNames(AudioDeviceNames* device_names) override;
38 void GetAudioOutputDeviceNames(AudioDeviceNames* device_names) override; 38 void GetAudioOutputDeviceNames(AudioDeviceNames* device_names) override;
39 AudioOutputStream* MakeAudioOutputStream( 39 AudioOutputStream* MakeAudioOutputStream(
40 const AudioParameters& params, 40 const AudioParameters& params,
41 const std::string& device_id) override; 41 const std::string& device_id,
42 AudioInputStream* MakeAudioInputStream(const AudioParameters& params, 42 const LogCallback& log_callback) override;
43 const std::string& device_id) override; 43 AudioInputStream* MakeAudioInputStream(
44 const AudioParameters& params,
45 const std::string& device_id,
46 const LogCallback& log_callback) override;
44 AudioOutputStream* MakeAudioOutputStreamProxy( 47 AudioOutputStream* MakeAudioOutputStreamProxy(
45 const AudioParameters& params, 48 const AudioParameters& params,
46 const std::string& device_id) override; 49 const std::string& device_id) override;
47 50
48 // Listeners will be notified on the GetTaskRunner() task runner. 51 // Listeners will be notified on the GetTaskRunner() task runner.
49 void AddOutputDeviceChangeListener(AudioDeviceListener* listener) override; 52 void AddOutputDeviceChangeListener(AudioDeviceListener* listener) override;
50 void RemoveOutputDeviceChangeListener(AudioDeviceListener* listener) override; 53 void RemoveOutputDeviceChangeListener(AudioDeviceListener* listener) override;
51 54
52 AudioParameters GetDefaultOutputStreamParameters() override; 55 AudioParameters GetDefaultOutputStreamParameters() override;
53 AudioParameters GetOutputStreamParameters( 56 AudioParameters GetOutputStreamParameters(
54 const std::string& device_id) override; 57 const std::string& device_id) override;
55 AudioParameters GetInputStreamParameters( 58 AudioParameters GetInputStreamParameters(
56 const std::string& device_id) override; 59 const std::string& device_id) override;
57 std::string GetAssociatedOutputDeviceID( 60 std::string GetAssociatedOutputDeviceID(
58 const std::string& input_device_id) override; 61 const std::string& input_device_id) override;
59 std::unique_ptr<AudioLog> CreateAudioLog( 62 std::unique_ptr<AudioLog> CreateAudioLog(
60 AudioLogFactory::AudioComponent component) override; 63 AudioLogFactory::AudioComponent component) override;
61 64
62 // AudioManagerBase: 65 // AudioManagerBase:
63 66
64 // Called internally by the audio stream when it has been closed. 67 // Called internally by the audio stream when it has been closed.
65 virtual void ReleaseOutputStream(AudioOutputStream* stream); 68 virtual void ReleaseOutputStream(AudioOutputStream* stream);
66 virtual void ReleaseInputStream(AudioInputStream* stream); 69 virtual void ReleaseInputStream(AudioInputStream* stream);
67 70
68 // Creates the output stream for the |AUDIO_PCM_LINEAR| format. The legacy 71 // Creates the output stream for the |AUDIO_PCM_LINEAR| format. The legacy
69 // name is also from |AUDIO_PCM_LINEAR|. 72 // name is also from |AUDIO_PCM_LINEAR|.
70 virtual AudioOutputStream* MakeLinearOutputStream( 73 virtual AudioOutputStream* MakeLinearOutputStream(
71 const AudioParameters& params) = 0; 74 const AudioParameters& params,
75 const LogCallback& log_callback) = 0;
72 76
73 // Creates the output stream for the |AUDIO_PCM_LOW_LATENCY| format. 77 // Creates the output stream for the |AUDIO_PCM_LOW_LATENCY| format.
74 virtual AudioOutputStream* MakeLowLatencyOutputStream( 78 virtual AudioOutputStream* MakeLowLatencyOutputStream(
75 const AudioParameters& params, 79 const AudioParameters& params,
76 const std::string& device_id) = 0; 80 const std::string& device_id,
81 const LogCallback& log_callback) = 0;
77 82
78 // Creates the input stream for the |AUDIO_PCM_LINEAR| format. The legacy 83 // Creates the input stream for the |AUDIO_PCM_LINEAR| format. The legacy
79 // name is also from |AUDIO_PCM_LINEAR|. 84 // name is also from |AUDIO_PCM_LINEAR|.
80 virtual AudioInputStream* MakeLinearInputStream( 85 virtual AudioInputStream* MakeLinearInputStream(
81 const AudioParameters& params, const std::string& device_id) = 0; 86 const AudioParameters& params,
87 const std::string& device_id,
88 const LogCallback& log_callback) = 0;
82 89
83 // Creates the input stream for the |AUDIO_PCM_LOW_LATENCY| format. 90 // Creates the input stream for the |AUDIO_PCM_LOW_LATENCY| format.
84 virtual AudioInputStream* MakeLowLatencyInputStream( 91 virtual AudioInputStream* MakeLowLatencyInputStream(
85 const AudioParameters& params, const std::string& device_id) = 0; 92 const AudioParameters& params,
93 const std::string& device_id,
94 const LogCallback& log_callback) = 0;
86 95
87 // Get number of input or output streams. 96 // Get number of input or output streams.
88 int input_stream_count() const { return num_input_streams_; } 97 int input_stream_count() const { return num_input_streams_; }
89 int output_stream_count() const { return num_output_streams_; } 98 int output_stream_count() const { return num_output_streams_; }
90 99
91 protected: 100 protected:
92 AudioManagerBase( 101 AudioManagerBase(
93 scoped_refptr<base::SingleThreadTaskRunner> task_runner, 102 scoped_refptr<base::SingleThreadTaskRunner> task_runner,
94 scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner, 103 scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner,
95 AudioLogFactory* audio_log_factory); 104 AudioLogFactory* audio_log_factory);
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 163
155 // Proxy for creating AudioLog objects. 164 // Proxy for creating AudioLog objects.
156 AudioLogFactory* const audio_log_factory_; 165 AudioLogFactory* const audio_log_factory_;
157 166
158 DISALLOW_COPY_AND_ASSIGN(AudioManagerBase); 167 DISALLOW_COPY_AND_ASSIGN(AudioManagerBase);
159 }; 168 };
160 169
161 } // namespace media 170 } // namespace media
162 171
163 #endif // MEDIA_AUDIO_AUDIO_MANAGER_BASE_H_ 172 #endif // MEDIA_AUDIO_AUDIO_MANAGER_BASE_H_
OLDNEW
« no previous file with comments | « media/audio/audio_manager.h ('k') | media/audio/audio_manager_base.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698