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

Unified Diff: media/audio/mac/audio_low_latency_input_mac.h

Issue 9418042: Adding microphone volume support to chrome. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: addressed henrik's comments Created 8 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: media/audio/mac/audio_low_latency_input_mac.h
diff --git a/media/audio/mac/audio_low_latency_input_mac.h b/media/audio/mac/audio_low_latency_input_mac.h
index 6b5c720345b18383332463b06e8858217d921ead..de0868c5472bbd9e81adfbc82a1b934d314ad230 100644
--- a/media/audio/mac/audio_low_latency_input_mac.h
+++ b/media/audio/mac/audio_low_latency_input_mac.h
@@ -61,6 +61,9 @@ class AUAudioInputStream : public AudioInputStream {
virtual void Start(AudioInputCallback* callback) OVERRIDE;
virtual void Stop() OVERRIDE;
virtual void Close() OVERRIDE;
+ virtual double GetMaxVolume() OVERRIDE;
+ virtual void SetVolume(double volume) OVERRIDE;
+ virtual double GetVolume() OVERRIDE;
// Returns the current hardware sample rate for the default input device.
static double HardwareSampleRate();
@@ -89,9 +92,16 @@ class AUAudioInputStream : public AudioInputStream {
// Gets the current capture delay value.
double GetCaptureLatency(const AudioTimeStamp* input_time_stamp);
+ // Gets the number of channels for a stream of audio data.
+ UInt32 GetNumberOfChannelsFromStream();
tommi (sloooow) - chröme 2012/02/24 12:07:34 It looks like you've taken the UInt32 type from a
no longer working on chromium 2012/02/24 15:05:55 Done.
+
// Issues the OnError() callback to the |sink_|.
void HandleError(OSStatus err);
+ // Helper function to check if the volume control is avialable on specific
+ // channel.
+ bool IsVolumeSettableOnChannel(int channel);
+
// Our creator, the audio manager needs to be notified when we close.
AudioManagerMac* manager_;
@@ -126,6 +136,10 @@ class AUAudioInputStream : public AudioInputStream {
// Fixed capture hardware latency in frames.
double hardware_latency_frames_;
+ // The number of channels in each frame of audio data, which is used
+ // when querying the volume of each channel.
+ UInt32 number_of_channels_in_frame_;
tommi (sloooow) - chröme 2012/02/24 12:07:34 is 32 bit necessary? int or size_t.
no longer working on chromium 2012/02/24 15:05:55 Done.
+
DISALLOW_COPY_AND_ASSIGN(AUAudioInputStream);
};

Powered by Google App Engine
This is Rietveld 408576698