1d5ac70f0Sopenharmony_ci/*! \mainpage Index, Preamble and License 2d5ac70f0Sopenharmony_ci 3d5ac70f0Sopenharmony_ci\author Jaroslav Kysela <perex@perex.cz> 4d5ac70f0Sopenharmony_ci\author Abramo Bagnara <abramo@alsa-project.org> 5d5ac70f0Sopenharmony_ci\author Takashi Iwai <tiwai@suse.de> 6d5ac70f0Sopenharmony_ci\author Frank van de Pol <fvdpol@coil.demon.nl> 7d5ac70f0Sopenharmony_ci 8d5ac70f0Sopenharmony_ciPreface 9d5ac70f0Sopenharmony_ci------- 10d5ac70f0Sopenharmony_ci 11d5ac70f0Sopenharmony_ciThe Advanced Linux Sound Architecture (\e ALSA) comes with a kernel 12d5ac70f0Sopenharmony_ciAPI and a library API. This document describes the library API and how 13d5ac70f0Sopenharmony_ciit interfaces with the kernel API. 14d5ac70f0Sopenharmony_ci 15d5ac70f0Sopenharmony_ci### Documentation License 16d5ac70f0Sopenharmony_ci 17d5ac70f0Sopenharmony_ci This documentation is free; you can redistribute it without 18d5ac70f0Sopenharmony_ci any restrictions. Modifications or derived work must retain 19d5ac70f0Sopenharmony_ci the copyright and list all authors. 20d5ac70f0Sopenharmony_ci 21d5ac70f0Sopenharmony_ci This documentation is distributed in the hope that it will be 22d5ac70f0Sopenharmony_ci useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 23d5ac70f0Sopenharmony_ci MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24d5ac70f0Sopenharmony_ci 25d5ac70f0Sopenharmony_ciAPI usage 26d5ac70f0Sopenharmony_ci--------- 27d5ac70f0Sopenharmony_ci 28d5ac70f0Sopenharmony_ciApplication programmers should use the library API rather than the 29d5ac70f0Sopenharmony_cikernel API. The library offers 100% of the functionality of the kernel API, 30d5ac70f0Sopenharmony_cibut adds major improvements in usability, making the application code simpler 31d5ac70f0Sopenharmony_ciand better looking. In addition, future fixes or compatibility code 32d5ac70f0Sopenharmony_cimay be placed in the library code instead of the kernel driver. 33d5ac70f0Sopenharmony_ci 34d5ac70f0Sopenharmony_ciAPI links 35d5ac70f0Sopenharmony_ci--------- 36d5ac70f0Sopenharmony_ci 37d5ac70f0Sopenharmony_ci- Page \subpage control explains the primitive controls API. 38d5ac70f0Sopenharmony_ci- Page \subpage control_plugins explains the design of primitive control plugins. 39d5ac70f0Sopenharmony_ci- Page \subpage hcontrol explains the high-level primitive controls API. 40d5ac70f0Sopenharmony_ci- Page \subpage mixer explains the mixer controls API. 41d5ac70f0Sopenharmony_ci- Page \subpage pcm explains the design of the PCM (digital audio) API. 42d5ac70f0Sopenharmony_ci- Page \subpage pcm_plugins explains the design of PCM (digital audio) plugins. 43d5ac70f0Sopenharmony_ci- Page \subpage pcm_external_plugins explains the external PCM plugin SDK. 44d5ac70f0Sopenharmony_ci- Page \subpage ctl_external_plugins explains the external control plugin SDK. 45d5ac70f0Sopenharmony_ci- Page \subpage rawmidi explains the design of the RawMidi API. 46d5ac70f0Sopenharmony_ci- Page \subpage timer explains the design of the Timer API. 47d5ac70f0Sopenharmony_ci- Page \subpage seq explains the design of the Sequencer API. 48d5ac70f0Sopenharmony_ci- Page \subpage ucm explains the use case API. 49d5ac70f0Sopenharmony_ci- Page \subpage topology explains the DSP topology API. 50d5ac70f0Sopenharmony_ci 51d5ac70f0Sopenharmony_ciConfiguration 52d5ac70f0Sopenharmony_ci------------- 53d5ac70f0Sopenharmony_ci 54d5ac70f0Sopenharmony_ci- Page \subpage conf explains the syntax of library configuration. 55d5ac70f0Sopenharmony_ci- Page \subpage confarg explains the run-time argument syntax. 56d5ac70f0Sopenharmony_ci- Page \subpage conffunc explains run-time function definitions and their usage. 57d5ac70f0Sopenharmony_ci- Page \subpage confhooks explains run-time hook definitions and their usage. 58d5ac70f0Sopenharmony_ci- Page \subpage ucm_conf explains the UCM configuration and their usage. 59d5ac70f0Sopenharmony_ci 60d5ac70f0Sopenharmony_ci*/ 61