ALSA
Advanced Linux Sound Architecture
Bill.Wu@tymphany.com
Overview
Audio playback and record
Sound console
# aplay music.wav
# arecord voice.wav
# alsamixer
# amixer
C Program API
/usr/include/alsa/asoundlib.h
snd_pcm_open
snd_pcm_close
snd_pcm_hw_params_set_xxx
snd_pcm_writei
snd_pcm_readi
Overview
alsa-utils
User Space
alsa-lib
alsa-plugins
Kernel Space
alsa-driver
soc-core
soc-dapm
Topic
• soc-core
• soc-dapm
• alsa-plugins
soc-core
Soc: System on Chip
WiFi
Video
DDR
Flash
SoC
Codec
soc-core
PCB
SoC
I2C
I2S-A
I2S-B
I2C
I2C
I2S-0
I2S-0
I2C
DSP
DSP
A
m
p
l
i
f
i
e
r
M
i
c
r
o
p
h
o
n
e
soc-core
PCB
SoC
I2S-A
I2S-B
I2S-0
DSP
Codec
I2S-0
DSP
Codec
Codec: An external IC with a set of registers
controlled via I2C or SPI
soc-core
PCB
I2S-A
SoCPlatform
I2S-0
Codec
Platform: SoC internal component. Copy audio data from DDR to I2S TX FIFO