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 1b79172e7ee1770b697cb8aeb7c776350fdd117d..366766475c3e527f3e2e92381d70a0eff47c50da 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 void SetMicVolume(double volume) OVERRIDE; |
+ virtual void GetMicVolume(double* volume) OVERRIDE; |
+ virtual void GetMaxMicVolume(double* max_volume) 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(); |
+ |
// 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_; |
+ |
DISALLOW_COPY_AND_ASSIGN(AUAudioInputStream); |
}; |