Public Member Functions
android_audio_legacy::AudioStreamOut Class Referenceabstract

AudioStreamOut is the abstraction interface for the audio output hardware. More...

Public Member Functions

virtual size_t bufferSize () const =0
 returns size of output buffer - eg. More...
 
virtual uint32_t channels () const =0
 returns the output channel nask More...
 
virtual status_t dump (int fd, const Vector< String16 > &args)=0
 dump the state of the audio output device More...
 
virtual int format () const =0
 return audio format in 8bit or 16bit PCM format - eg. More...
 
uint32_t frameSize () const
 return the frame size (number of bytes per sample). More...
 
virtual String8 getParameters (const String8 &keys)=0
 
virtual status_t getRenderPosition (uint32_t *dspFrames)=0
 
virtual uint32_t latency () const =0
 return the audio hardware driver latency in milli seconds. More...
 
virtual uint32_t sampleRate () const =0
 return audio sampling rate in hz - eg. More...
 
virtual status_t setParameters (const String8 &keyValuePairs)=0
 
virtual status_t setVolume (float left, float right)=0
 Use this method in situations where audio mixing is done in the hardware. More...
 
virtual status_t standby ()=0
 Put the audio hardware output into standby mode. More...
 
virtual ssize_t write (const void *buffer, size_t bytes)=0
 write audio buffer to driver. More...
 
virtual ~AudioStreamOut ()=0
 

Detailed Description

AudioStreamOut is the abstraction interface for the audio output hardware.

It provides information about various properties of the audio output hardware driver.

Definition at line 48 of file AudioHardwareInterface.h.

Constructor & Destructor Documentation

virtual android_audio_legacy::AudioStreamOut::~AudioStreamOut ( )
pure virtual

Member Function Documentation

virtual size_t android_audio_legacy::AudioStreamOut::bufferSize ( ) const
pure virtual

returns size of output buffer - eg.

4800

virtual uint32_t android_audio_legacy::AudioStreamOut::channels ( ) const
pure virtual

returns the output channel nask

virtual status_t android_audio_legacy::AudioStreamOut::dump ( int  fd,
const Vector< String16 > &  args 
)
pure virtual

dump the state of the audio output device

virtual int android_audio_legacy::AudioStreamOut::format ( ) const
pure virtual

return audio format in 8bit or 16bit PCM format - eg.

AudioSystem:PCM_16_BIT

uint32_t android_audio_legacy::AudioStreamOut::frameSize ( ) const
inline

return the frame size (number of bytes per sample).

Definition at line 72 of file AudioHardwareInterface.h.

References channels(), and format().

virtual String8 android_audio_legacy::AudioStreamOut::getParameters ( const String8 &  keys)
pure virtual
virtual status_t android_audio_legacy::AudioStreamOut::getRenderPosition ( uint32_t *  dspFrames)
pure virtual
virtual uint32_t android_audio_legacy::AudioStreamOut::latency ( ) const
pure virtual

return the audio hardware driver latency in milli seconds.

virtual uint32_t android_audio_legacy::AudioStreamOut::sampleRate ( ) const
pure virtual

return audio sampling rate in hz - eg.

44100

virtual status_t android_audio_legacy::AudioStreamOut::setParameters ( const String8 &  keyValuePairs)
pure virtual
virtual status_t android_audio_legacy::AudioStreamOut::setVolume ( float  left,
float  right 
)
pure virtual

Use this method in situations where audio mixing is done in the hardware.

This method serves as a direct interface with hardware, allowing you to directly set the volume as apposed to via the framework. This method might produce multiple PCM outputs or hardware accelerated codecs, such as MP3 or AAC.

virtual status_t android_audio_legacy::AudioStreamOut::standby ( )
pure virtual

Put the audio hardware output into standby mode.

Returns status based on include/utils/Errors.h

virtual ssize_t android_audio_legacy::AudioStreamOut::write ( const void *  buffer,
size_t  bytes 
)
pure virtual

write audio buffer to driver.

Returns number of bytes written