0% found this document useful (0 votes)
157 views

Audio Player Using ALSA

ALSA (Advanced Linux Sound Architecture) is a sound API and kernel drivers for Linux that provides support for audio hardware. It was created because the original Linux sound drivers were not being actively maintained. ALSA consists of kernel drivers, a library (libasound) that applications use, and utility programs. The goal of this project is to use the ALSA API to develop an audio console player that demonstrates ALSA's driver and hardware support on a Beagleboard.

Uploaded by

manojram18
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
157 views

Audio Player Using ALSA

ALSA (Advanced Linux Sound Architecture) is a sound API and kernel drivers for Linux that provides support for audio hardware. It was created because the original Linux sound drivers were not being actively maintained. ALSA consists of kernel drivers, a library (libasound) that applications use, and utility programs. The goal of this project is to use the ALSA API to develop an audio console player that demonstrates ALSA's driver and hardware support on a Beagleboard.

Uploaded by

manojram18
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 3

Writing Audio play using ALSA API(Application

Programming Interface)

ALSA stands for the Advanced Linux Sound Architecture. It


consists of a set of kernel drivers, an application programming
interface (API) library and utility programs for supporting sound under
Linux. ALSA is not the only sound API available. ALSA is a good choice
if you are performing low-level audio functions for maximum control
and performance or want to make use of special features not
supported by other sound APIs.

History of ALSA:

The ALSA Project was started because the sound drivers in the
Linux kernel (OSS/Free drivers) were not being maintained actively
and were lagging behind the capabilities of new sound technology.
Jaroslav Kysela, who previously had written a sound card driver,
started the project. Over time, more developers joined, support for
many sound cards was added and the structure of the API was refined.

During development of the 2.5 series of Linux kernel, ALSA was merged into the
official kernel source. With the release of the 2.6 kernel, ALSA will be part of the stable
Linux kernel and should be in wide use.

Digital Audio Basics

Sound, consisting of waves of varying air pressure, is converted


to its electrical form by a transducer, such as a microphone. An
analog-to-digital converter (ADC) converts the analog voltages into
discrete values, called samples, at regular intervals in time, known as
the sampling rate. By sending the samples to a digital-to-analog
converter and an output transducer, such as a loudspeaker, the
original sound can be reproduced.

The size of the samples, expressed in bits, is one factor that


determines how accurately the sound is represented in digital form.
The other major factor affecting sound quality is the sampling rate.
The Nyquist Theorem states that the highest frequency that can be
represented accurately is at most one-half the sampling rate.
ALSA Basics

ALSA consists of a series of kernel device drivers for many


different sound cards, and it also provides an API library, libasound.
Application developers are encouraged to program using the library
API and not the kernel interface. The library provides a higher-level
and more developer-friendly programming interface along with a
logical naming of devices so that developers do not need to be aware
of low-level details such as device files.

Aim of our Project:

As ALSA provides API’s along with driver. In our project, we are


making use of this ALSA API to develop our own audio console player
to show the working and support of ALSE driver and audio hardware
present in Beagleboard.

You might also like