The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality to the Linux operating system. ALSA has the following significant features:
Efficient support for all types of audio interfaces, from consumer sound cards to professional multichannel audio interfaces.
Fully modularized sound drivers.
SMP and thread-safe design.
User space library (alsa-lib) to simplify application programming and provide higher level functionality.
Support for the older Open Sound System (OSS) API, providing binary compatibility for most OSS programs.
Homepage
Download
Recent Releases
1.2.1323 Nov 2024 22:40
minor feature:
1.2.1212 Jun 2024 15:05
minor feature:
lt;p gt;Release v1.2.12 lt;/p gt;.
lt;p gt;Core.
lt;br / gt; - Release v1.2.12.
lt;br / gt; - GitHub Actions: Use actions/checkout@v4.
lt;br / gt; - pcm: plug - add automatic conversion for iec958 subframe samples.
lt;br / gt;PCM API.
lt;br / gt; - pcm: extend doc for snd_pcm_hw_params_get_sbits().
lt;br / gt; - pcm: clarify and default sbits (msbits) value for all formats.
lt;br / gt; - pcm: ladspa - Skip missing ladspa directories.
lt;br / gt; - pcm: snd_pcm_(physical_)format_width() - change documentation.
lt;br / gt; - pcm: plug - add automatic conversion for iec958 subframe samples.
lt;br / gt;PCM Plugin API.
lt;br / gt; - pcm: plug - add automatic conversion for iec958 subframe samples.
lt;br / gt;Topology API.
lt;br / gt; - topology: correct version script path.
lt;br / gt;Use Case Manager API.
lt;br / gt; - use-case.h: add DisplayPort to HDMI device description.
lt;br / gt; - ucm: doc - add Variant and Macro to the evaluation order.
lt;br / gt; - ucm: define and describe Syntax 7.
lt;br / gt; - ucm: raise error when macro argument is already defined (used).
lt;br / gt; - ucm: do argument value substitution for Macros.
lt;br / gt; - ucm: Path condition - substitute Path.
lt;br / gt; - ucm: Path condition - substitute Path and Mode fields.
lt;br / gt;Async helpers.
lt;br / gt; - async: snd_async_del_handler - move clear signal using sigaction as last.
lt;br / gt;Configuration.
lt;br / gt; - conf: aliases: hdmi: Include unconditionally the.
lt;br / gt; - conf: USB-Audio: Add Corsair HS60 Pro to the IEC958 blacklist.
lt;br / gt; - conf: USB-Audio: Add more Scarlett devices to the IEC958 blacklist.
lt;br / gt;Test/Example code.
lt;br / gt; - tests: latency.c - copy-n-paste typos (sw - amp;gt; hw params) in error messages lt;/p gt;.
lt;p gt;Signed-off-by: Jaroslav Kysela amp;lt;perex@perex.cz amp;gt; lt;/p gt;.
.
perexg.
.
.
.
.
tag:github.com,2008:Repository/154184919/v1.2.11.
2024-01-30T09:03:07Z.
1.2.1131 Jan 2024 18:05
minor bugfix:
lt;p gt;Release v1.2.11 lt;/p gt;.
lt;p gt;Signed-off-by: Jaroslav Kysela amp;lt;perex@perex.cz amp;gt; lt;/p gt;.
.
perexg.
.
.
.
.
tag:github.com,2008:Repository/154184919/v1.2.10.
2023-09-01T19:12:24Z.
.
.
1.2.1030 Dec 2023 14:00
minor feature:
Core
- Release v1.2.10
- Fix symver build error on non-ELF platforms
- doxygen: include docs for shmarea functions
- doxygen: silence warning from asoundlib.h
- doxygen: global: silence 'not documented' warnings
- doxygen: Fix missing group end markers
- configure: add AC_SYS_LARGEFILE
- seq: Add UMP 1.1 features
- seq: Add UMP support
- ump: Add helpers to parse / set UMP packet data
- control: Add UMP Endpoint and Block info query support
- control: Add UMP device query support
- ump: Add initial support
- include: fix SND_DLSYM_BUILD_VERSION() for static build
Config API
- doxygen: conf: silence 'not documented' warnings
Control API
- doxygen: namehint: silence 'not documented' warnings
- doxygen: control: silence 'not documented' item warnings
- doxygen: include external control docs
- reshuffle included files to include config.h as first
- control: Add UMP Endpoint and Block info query support
- control: Add UMP device query support
- remove extra trailing new line in SNDMSG and SNDERR calls
Mixer API
- topology: fix src/mixer/mixer.c return value warning
- doxygen: fix broken parameter name tags
PCM API
- doxygen: fix broken examples links
- doxygen: pcm: silence 'not documented' warnings
- doxygen: fix inadvertent link requests
- doxygen: fix broken parameter name tags
- pcm: hw: fix minor bug in sw_params ioctl
- remove extra trailing new line in SNDMSG and SNDERR calls
- pcm: hw - prevent divide by zero for broken apps
RawMidi API
- doxygen: fix broken examples links
- doxygen: rawmidi: silence 'not documented' warnings
- doxygen: fix broken parameter name tags
- rawmidi: Suppress error messages for non-fatal errors
- ump: Add UMP 1.1 features
- ump: Add helpers for handling SysEx data
- ump: Add helpers to parse / set UMP packet data
- ump: Add initial support
- rawmidi: Add UMP ioctl support
Rawmidi API
- ump: Add initial support
Sequencer API
- doxygen: seq: silence 'not documented' warnings
- seq: Fix wrong seq
1.1.322 Dec 2016 13:30
minor feature:
Core
conf/ucm: skylake: add skylake-rt286 conf files
conf: bxtrt298: Add topology conf file for bxt
conf: sklrt286: Remove tool to generate private data blobs
ucm: Add ucm files for DB410c board.
Control API
ctl: correct documentation about TLV feature
ctl: improve documentation about TLV-related APIs
ctl: improve API documentation for TLV operation
Mixer API
mixer: Fix rounding mode documentation
PCM API
pcm: fix get_stop_threshold alsa-lib 0.9 alias
pcm: file: update linked hw_ptr and appl_ptr
pcm_rate: Do not discard slave reported delay in status result.
pcm: fix wrong document references to PCM APIs which perform direct memory access with frame copying
pcm: dmix: Do not discard slave reported delay in status result
pcm: Add the PCM state checks to plugins
Revert "pcm: file: Add htimestamp operation in plugin file"
pcm: file: Add htimestamp operation in plugin file
pcm: dshare: Fix endless playback of buffer
pcm: direct: Protect from freeing semaphore when already in use
pcm_dshare: Do not discard slave reported delay in status result.
pcm_plug: Clear plugins on all error conditions
pcm: Better understandable locking code
pcm: Fix shm initialization race-condition
Topology API
topology: fix unused-variable warnings introduced to build_link()
topology: Store number of strings of a text section
topology: Merge private data before embedded controls of a widget
topology: Revise document and comments for ABI v5
topology: Export physical DAIs to the binary for kernel
topology: Support configuring physical DAIs by C API
topology: Parse physical DAIs in text conf file
topology: Remove BE or CC in comments of physical links C API template
topology: Parse name and stream name of physical DAI links