Voice Band Audio Playback Using a PWM DAC Design Guide (Rev. A)
FxOS Audio Playback 101
-
Upload
alastor-wu -
Category
Software
-
view
58 -
download
2
Transcript of FxOS Audio Playback 101
GECKO
3
mVideoQueue
MDSM
mAudioQueue
AudioSink AudioStream
AudioLoop()mAudioSink mAudioStreamWrite()
mBuffer
AUDIO PLAYBACK OVERVIEW
GONK
4
AudioTrack
Audio Buffer
MediaServer
AudioFlinger
AudioPolicy Service
HAL
Audio Module
AudioPolicy Module
Linux Kernel
ALSA/OSS Custom Driver
AUDIO PLAYBACK OVERVIEW
FXOS
5
AUDIO PLAYBACK OVERVIEW
Gecko
Gonk
MDSM AudioSink AudioStream Lib Cubeb
AudioTrack AudioSystemNative Framework
AudioFlinger AudioPolicy Service
Media Server
AudioHardware AudioPolicyManagerHAL
Linux Kernel
OpenSL NDK
ANDROID
6
AUDIO OUTPUT DEVICES
Stream Types Strategies DevicesAudio
Channel Types
Output device
Earpiece Speaker Wired headset/phone Bluetooth SCO headset/carkit Bluetooth A2DP headphone/speaker
…
Media Phone Sonification Sonification respectful DTMF Enforce audible
Voice call System Ring Music Alarm Notification BT SCO Enforce audible DTMF TTS FM
ANDROID
7
AUDIO OUTPUT PROFILES
Inputs
Outputs
IOProfiles
IOProfiles
Sample rates
Channel masks
Formats
Devices
Modules
primary/a2dp/usbkhz
mono/stereo
mp3/aac/…
speaker/headset…
ANDROID
8
AUDIO PLAYBACK FLOW
AudioTrack
AudioSystem AudioPolicy Service
GetOutput() OpenOutput()
Data flow
AudioFlinger
Playback Thread
mTracks Audio Mixer
AudioHardware