Porting custom audio codec in Linux BSP

For ALSA based drivers

This article explains about porting custom ALSA based audio codec driver in Linux BSP. I have taken audio codec wm8960 and NXP’s IMX7 processor as an example. The source code for this linux BSP is available here under GNU General Public License. Advanced Linux Sound Architecture (ALSA) Advanced Linux Sound Architecture (ALSA) is a software framework and part of the Linux kernel that provides an application programming interface (API) for sound card device drivers. [Read More]

Acoustic Echo Cancellation in Android using webRTC

Echo cancellation is method in telephony/VOIP to improve voice quality by preventing echo from being created or removing it after it is already present.

What is Acoustic echo?

Echo is a sound or sounds caused by the reflection of sound waves from a surface back to the listener. This happens in telephony/VOIP application, when a speaker phone/loud speaker is used, the microphone receives the voice signal from speaker. This results in acoustic echo for the person speaking in the far end.

[Read More]

Android Audio Framework Architecture

An overview of Audio HAL

This article highlights Android audio architecture, audio frameworks, role of audioflinger, audio HAL and its implementation details.

What is Android Audio Architecture?

In general, it is Audio signal processing which involves lot of operations and provide various functionalities such as playing music, recording microphone audio,real-time voice communication, adding audio effects such as echo cancellation, noise suppression etc. The audio architecture in android has to take care of many aspects such as supporting more hardware such as HDMI, earpiece, headset, speaker, mic, Bluetooth SCO, A2DP ectc, relat-time requirements and supporting different software like media player/recoder, VIOP application, SIP application and phone calls.

[Read More]