Disclaimer: This article is not my original, mainly including some information collected on the Internet and personal notes.
Audio System Overview
Terminology:
ASLA-advanced sound Linux ubuntureoss-previous Linux audio architecture, replaced by ASLA and compatible with codec-coder/decoderi2s/PCM/ac97-codec and the audio communication protocol/interface/bus Dai-digital audio interface between the CPU is actually I2S/PCM/ac97dac- digit to analog conversionadc-analog to digit conversiondsp-Digital Signal processormixer-mixer, mixing several audio analog signals from different channels into one analog signal mute-cancel, shielding the signal channel PCM-pulse code modulation, and converting the audio analog signal into a digital signal, different from the PCM audio communication protocol sample rate-ADC frequency, the number of samples per second, typical values such as 44.1 khzsample length-such as 24bit, the audio analog signal is divided equally by SSI-serial sound interfacedapm-Dynamic Audio Power management to the power of 2's 24
Codec is used as the research object. Its input includes mic (MICROPHONE) and phonein telephone signals, and the output includes headset HP (headphone), speaker SPK (speaker), and phoneout telephone signals. In addition, you must note that there are Audio Digital Signal Input and Output between codec and CPU.
1. Playback
2. Recording
3. Telephone uplink
4. Telephone downlink
5. Use a Bluetooth phone
6. go offline via Bluetooth phone
From: http://blog.csdn.net/qianjin0703/article/details/6387662
Loon: 1-4, that is, playing, recording, making phone calls, answering phones, and our current audio system are basically the same, and should also be a regular design. The Bluetooth module is added in 5-6, but the connection between codec and Bluetooth is drawn. The connection between codec and CPU, and between Bluetooth and CPU is not provided. We only have one set of Dai in codec (which can be configured as I2S or PCM). Can we reuse a set of Dai from CODEC to Bluetooth and CODEC to CPU? Designing ......
Wm9713 audio Path Design
Codec: wm9713
Requirement: Call recording and phone background audio playback. Support for headsets and Bluetooth headsets
Wm9713 route control: Local: AP sound playback: DAC-> spkmixer-> SPK recording: mic1-> rec-> ADC (board-mounted mic connected to mic1) on the phone: mic1-> monomixer-> mono-> module input phone downlink: module output-> headset/hands-free status: module output-> monoin/pcbeff-> spkmixer-> SPK call recording: monomixer-> Rec (telephone uplink), monoin-> Rec (telephone downlink) background audio playback: DAC-> monomixer Headset: AP sound playback: DAC-> hpmixer-> HP recording: mic2a-> rec-> ADC (headset mic connected to mic2a) Phone uplink: mic1-> monomixer-> mono-> module (Here we obviously use the onboard mic for phone uplink. Better use of the headset mic): module output-> line-> hpmixer-> HP call recording: monomixer-> Rec (telephone uplink), hpmixer-> Rec (telephone downlink) background audio playback: DAC-> monomixer Bluetooth headset: the Bluetooth headset is connected through the PCM Interface of codec. AP sound playback: DAC-> hpmixer-> rec-> ADC-> PCM-> Bluetooth recording: Bluetooth-> PCM-> voicedac-> ADC phone upstream: bluetooth-> PCM-> voicedac-> monomixer-> mono-> module input phone downlink: monoin/pcbeff-> hpmixer-> rec-> ADC-> Bluetooth background audio playback: DAC-> monomixer
From: http://blog.csdn.net/dycl3/article/details/2645835
Loon. The following figure shows the wm9713 diagram and the Bluetooth diagram to help you understand the audio path design.
Wm9713 block diagram:
Bluetooth call diagram:
The Bluetooth call diagram indicates an error. It should be "blue indicates the phone goes down, and red indicates the phone goes up ". I hereby make corrections!