android::AudioHardwareInterface Class Reference

AudioHardwareInterface.h defines the interface to the audio hardware abstraction layer. More...

#include <AudioHardwareInterface.h>


Public Member Functions

virtual status_t initCheck ()=0
 check to see if the audio hardware interface has been initialized.
virtual status_t standby ()=0
 put the audio hardware into standby mode to conserve power.
virtual status_t setVoiceVolume (float volume)=0
 set the audio volume of a voice call.
virtual status_t setMasterVolume (float volume)=0
 set the audio volume for all audio activities other than voice call.
virtual status_t setRouting (int mode, uint32_t routes)=0
 Audio routing methods.
virtual status_t getRouting (int mode, uint32_t *routes)=0
virtual status_t setMode (int mode)=0
 setMode is called when the audio mode changes.
virtual status_t getMode (int *mode)=0
virtual status_t setMicMute (bool state)=0
virtual status_t getMicMute (bool *state)=0
virtual status_t setParameter (const char *key, const char *value)=0
virtual size_t getInputBufferSize (uint32_t sampleRate, int format, int channelCount)=0
virtual AudioStreamOutopenOutputStream (int format=0, int channelCount=0, uint32_t sampleRate=0, status_t *status=0)=0
 This method creates and opens the audio hardware output stream.
virtual AudioStreamInopenInputStream (int format, int channelCount, uint32_t sampleRate, status_t *status)=0
 This method creates and opens the audio hardware input stream.
virtual status_t dumpState (int fd, const Vector< String16 > &args)=0
 This method dumps the state of the audio hardware.

Static Public Member Functions

static AudioHardwareInterfacecreate ()

Protected Member Functions

virtual status_t doRouting ()=0
 doRouting actually initiates the routing.
virtual status_t dump (int fd, const Vector< String16 > &args)=0

Detailed Description

AudioHardwareInterface.h defines the interface to the audio hardware abstraction layer.

The interface supports setting and getting parameters, selecting audio routing paths, and defining input and output streams.

AudioFlinger initializes the audio hardware and immediately opens an output stream. You can set Audio routing to output to handset, speaker, Bluetooth, or a headset.

The audio input stream is initialized when AudioFlinger is called to carry out a record operation.

Definition at line 144 of file AudioHardwareInterface.h.


Member Function Documentation

virtual status_t android::AudioHardwareInterface::initCheck (  )  [pure virtual]

check to see if the audio hardware interface has been initialized.

return status based on values defined in include/utils/Errors.h

virtual status_t android::AudioHardwareInterface::standby (  )  [pure virtual]

put the audio hardware into standby mode to conserve power.

Returns status based on include/utils/Errors.h

virtual status_t android::AudioHardwareInterface::setVoiceVolume ( float  volume  )  [pure virtual]

set the audio volume of a voice call.

Range is between 0.0 and 1.0

virtual status_t android::AudioHardwareInterface::setMasterVolume ( float  volume  )  [pure virtual]

set the audio volume for all audio activities other than voice call.

Range between 0.0 and 1.0. If any value other than NO_ERROR is returned, the software mixer will emulate this capability.

virtual status_t android::AudioHardwareInterface::setRouting ( int  mode,
uint32_t  routes 
) [pure virtual]

Audio routing methods.

Routes defined in include/hardware/AudioSystem.h. Audio routes can be (ROUTE_EARPIECE | ROUTE_SPEAKER | ROUTE_BLUETOOTH | ROUTE_HEADSET)

setRouting sets the routes for a mode. This is called at startup. It is also called when a new device is connected, such as a wired headset is plugged in or a Bluetooth headset is paired.

virtual status_t android::AudioHardwareInterface::getRouting ( int  mode,
uint32_t *  routes 
) [pure virtual]

virtual status_t android::AudioHardwareInterface::setMode ( int  mode  )  [pure virtual]

setMode is called when the audio mode changes.

NORMAL mode is for standard audio playback, RINGTONE when a ringtone is playing, and IN_CALL when a call is in progress.

virtual status_t android::AudioHardwareInterface::getMode ( int *  mode  )  [pure virtual]

virtual status_t android::AudioHardwareInterface::setMicMute ( bool  state  )  [pure virtual]

virtual status_t android::AudioHardwareInterface::getMicMute ( bool *  state  )  [pure virtual]

virtual status_t android::AudioHardwareInterface::setParameter ( const char *  key,
const char *  value 
) [pure virtual]

virtual size_t android::AudioHardwareInterface::getInputBufferSize ( uint32_t  sampleRate,
int  format,
int  channelCount 
) [pure virtual]

virtual AudioStreamOut* android::AudioHardwareInterface::openOutputStream ( int  format = 0,
int  channelCount = 0,
uint32_t  sampleRate = 0,
status_t *  status = 0 
) [pure virtual]

This method creates and opens the audio hardware output stream.

virtual AudioStreamIn* android::AudioHardwareInterface::openInputStream ( int  format,
int  channelCount,
uint32_t  sampleRate,
status_t *  status 
) [pure virtual]

This method creates and opens the audio hardware input stream.

virtual status_t android::AudioHardwareInterface::dumpState ( int  fd,
const Vector< String16 > &  args 
) [pure virtual]

This method dumps the state of the audio hardware.

static AudioHardwareInterface* android::AudioHardwareInterface::create (  )  [static]

virtual status_t android::AudioHardwareInterface::doRouting (  )  [protected, pure virtual]

doRouting actually initiates the routing.

A call to setRouting or setMode may result in a routing change. The generic logic calls doRouting when required. If the device has any special requirements these methods can be overriden.

virtual status_t android::AudioHardwareInterface::dump ( int  fd,
const Vector< String16 > &  args 
) [protected, pure virtual]


The documentation for this class was generated from the following file: