N900 Hardware Audio Codec
(Flesh out slightly.) |
(→Hardware) |
||
(3 intermediate revisions not shown) | |||
Line 3: | Line 3: | ||
==Hardware== | ==Hardware== | ||
- | The audio codec is a low-power 4 channel codec [http://focus.ti.com/docs/prod/folders/print/tlv320aic34.html | + | The audio codec is a low-power 4 channel codec IC [http://focus.ti.com/docs/prod/folders/print/tlv320aic34.html TLV320AIC34]. |
+ | |||
+ | It is connected to the CPU using [[N900 Hardware Bus I2C|I2C]] and the MCBSP serial digital audio interface. | ||
+ | ===Unutilised Functions=== | ||
+ | The audio codec supports a flexible digital filter on both the input and output. | ||
+ | This can be used to perform equalization with no CPU load. | ||
+ | |||
+ | This function is not used, and pulseaudio is used for this task when speakers are enabled. | ||
+ | |||
+ | It can also route the audio directly from the FM receiver to the speakers or the headphones, optionally through this hardware EQ module, also reducing power in this usecase, by entirely eliminating CPU usage. | ||
==Software== | ==Software== | ||
Line 25: | Line 34: | ||
===Kernel=== | ===Kernel=== | ||
+ | |||
+ | The codec is driven by [http://mxr.maemo.org/fremantle/source/kernel/sound/soc/omap/rx51.c a driver built into the kernel]. | ||
+ | |||
[[Category:N900 Hardware]] | [[Category:N900 Hardware]] |
Latest revision as of 22:12, 5 January 2014
The Audio codec encodes and decodes audio.
Contents |
[edit] Hardware
The audio codec is a low-power 4 channel codec IC TLV320AIC34.
It is connected to the CPU using I2C and the MCBSP serial digital audio interface.
[edit] Unutilised Functions
The audio codec supports a flexible digital filter on both the input and output. This can be used to perform equalization with no CPU load.
This function is not used, and pulseaudio is used for this task when speakers are enabled.
It can also route the audio directly from the FM receiver to the speakers or the headphones, optionally through this hardware EQ module, also reducing power in this usecase, by entirely eliminating CPU usage.
[edit] Software
[edit] User
The audio codec is driven by pulseaudio, through ALSA. The ALSA interface is usually not exposed in maemo 5 - adding:
pcm.real { type hw card 0 } ctl.real { type hw card 0 }
to /etc/asound.conf enables a hardware device. Stopping pulseaudio may be required to use this.
[edit] Kernel
The codec is driven by a driver built into the kernel.
- This page was last modified on 5 January 2014, at 22:12.
- This page has been accessed 13,071 times.