Difference between revisions of "Sound system"

From ArchWiki
Jump to: navigation, search
m (General information: fix typo: hardvare =>hardware)
m (General information)
(29 intermediate revisions by 8 users not shown)
Line 1: Line 1:
[[Category:Sound (English)]]
+
[[Category:Sound]]
[[Category:Audio/Video (English)]]
+
[[Category:Audio/Video]]
{{i18n|Sound}}
+
[[es:Sound system]]
{{Poor writing}}
+
[[it:Sound system]]
 +
{{Expansion|describe usage of schedtool/nice with sound server}}
 +
 
 +
This article is about basic sound management. For advanced topics see [[Pro Audio]].
  
 
== General information ==
 
== General information ==
Arch sound system contains of several levels:
+
Arch sound system consists of several levels:
* Kernel drivers and interface – hardware support, providing general capabilities (software mixing etc)
+
* Drivers and interface – hardware support and control
* Usermode API (libraries) – for application access
+
* '''(optional)''' Usermode sound servers – more advanced capabilities
+
* '''(optional)''' Sound frameworks – crossplatform and easy access for applications (pulled-in during application installation)
+
  
Default Arch installation already includes kernel sound system, namely [[ALSA]], and lots of utilities for it, to be installed from [[Official repositories]]. Ones who want additional features can switch to another one (namely [[OSS]]) or install one of several [[Wikipedia:Sound Server|sound servers]].
+
* Usermode API (libraries) – utilized and required by applications
  
==Latency==
+
* '''(optional)''' Usermode sound servers – best for the complex desktop, needed for multiple simultaneous audio apps, and vital for more advanced capabilities e.g. pro audio
{{Stub}}
+
  
*irqbalance
+
* '''(optional)''' Sound frameworks – higher-level application environments not involving server processes
*linux-rt
+
*schedtool/nice (with sound server)
+
  
== Drivers ==
+
Default Arch installation already includes kernel sound system, namely [[ALSA]], and lots of utilities for it, to be installed from [[official repositories]]. Ones who want additional features can switch to another one (namely [[OSS]]) or install one of several [[Wikipedia:Sound Server|sound servers]].
* {{App|[[ALSA|The Advanced Linux Sound Architecture (ALSA)]]|Linux kernel component intended to provide device drivers for sound cards|http://www.alsa-project.org/main/index.php/Main_Page|present int stock kernel}}
+
 
* {{App|[[OSS|The Open Sound System (OSS)]]|alternative sound architecture for Unix-like and POSIX-compatible systems. OSS version 3 was the original sound system for Linux and is in the kernel but was superceded by ALSA in 2002 when OSS version 4 became proprietary software. OSSv4 became free software again in 2007 when 4Front Technologies released its source code and provided it under the GPL license|http://www.opensound.com/|{{Pkg|oss}}}}
+
== Drivers and Interface ==
 +
* {{App|[[ALSA|The Advanced Linux Sound Architecture (ALSA)]]|A Linux kernel component providing device drivers and lowest-level support for audio hardware.|http://www.alsa-project.org/main/index.php/Main_Page|present in stock kernel}}
 +
 
 +
* {{App|[[OSS|The Open Sound System (OSS)]]|An alternative sound architecture for Unix-like and POSIX-compatible systems. OSS version 3 was the original sound system for Linux and is in the kernel, but was superceded by ALSA in 2002 when OSS version 4 became proprietary software. OSSv4 became free software again in 2007 when 4Front Technologies released its source code and provided it under the GPL.  Does not support as wide a variety of hardware as ALSA, but does better for some.|http://www.opensound.com/|{{aur|oss}}}}
  
 
==Sound servers==
 
==Sound servers==
* {{App|[[JACK|The Jack-Audio-Connection-Kit]]|sound server for advanced use, and is generally used by professionals looking to record. Regardless it does support mixing, although to get non JACK aware applications to work, a plugin has to be provided. The alsa-plugins package will pull this in.|http://jackaudio.org/|{{Pkg|jack}}}}
+
* {{App|[[PulseAudio]]|A very popular sound server, usable by most common desktop Linux applications today. Very good at handling multiple simultaneous inputs, and can do network audio as well.  Very easy to get working, in fact very often all one has to do is install the package and it will automatically run.  Not intended for pro audio low-latency applications.|http://www.pulseaudio.org/|{{Pkg|pulseaudio}}}}
* {{App|JACK2|also called JACK-mp, it is the next version of JACK, with support for multi-processors and for network audio|http://trac.jackaudio.org/wiki/Q_differenc_jack1_jack2|{{Pkg|jack2}}}}
+
 
* {{App|[[PulseAudio]]|popular sound server, provided by many distributives|http://www.pulseaudio.org/|{{Pkg|pulseaudio}}}}
+
* {{App|[[JACK|The Jack-Audio-Connection-Kit]]|The older edition of a sound server for pro audio use, especially for low-latency applications including recording, effects, realtime synthesis, and many others. Although this edition is the older, it retains a very active and devoted development team, and which edition to use is not clear, trial and error is often helpful.|http://jackaudio.org/|{{Pkg|jack}}}}
* [[Wikipedia:Network Audio System|NAS]]
+
 
 +
* {{App|JACK2|Also called jackdmp, this is the newer edition of JACK, designed explicitly towards multi-processor systems, and also includes transport over network.|http://trac.jackaudio.org/wiki/Q_differenc_jack1_jack2|{{Pkg|jack2}}}}
 +
 
 +
* {{App|JACK2 with D-Bus|This is JACK2 with a different startup architecture, capable of running well at all times in coexistence with PulseAudio and non-JACK applications, which is a problem for the other two categories of JACK setup.|http://trac.jackaudio.org/wiki/WalkThrough/User/jack_control|{{Pkg|jack2-dbus}}}}
 +
 
 +
* {{App|[[Wikipedia:Network Audio System|NAS]]|This is a sound server supported by some major applications.|http://www.radscan.com/nas/nas-links.html|{{AUR|nas}}}}
  
==Related Articles==
+
==See also==
*[[Pro Audio]]
+
 
*[[MIDI]]
 
*[[MIDI]]
 
*[[Codecs]]
 
*[[Codecs]]
 
*[[Disable PC Speaker Beep]]
 
*[[Disable PC Speaker Beep]]

Revision as of 19:59, 18 September 2012

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: describe usage of schedtool/nice with sound server (Discuss in Talk:Sound system#)

This article is about basic sound management. For advanced topics see Pro Audio.

General information

Arch sound system consists of several levels:

  • Drivers and interface – hardware support and control
  • Usermode API (libraries) – utilized and required by applications
  • (optional) Usermode sound servers – best for the complex desktop, needed for multiple simultaneous audio apps, and vital for more advanced capabilities e.g. pro audio
  • (optional) Sound frameworks – higher-level application environments not involving server processes

Default Arch installation already includes kernel sound system, namely ALSA, and lots of utilities for it, to be installed from official repositories. Ones who want additional features can switch to another one (namely OSS) or install one of several sound servers.

Drivers and Interface

http://www.alsa-project.org/main/index.php/Main_Page || present in stock kernel
  • The Open Sound System (OSS) — An alternative sound architecture for Unix-like and POSIX-compatible systems. OSS version 3 was the original sound system for Linux and is in the kernel, but was superceded by ALSA in 2002 when OSS version 4 became proprietary software. OSSv4 became free software again in 2007 when 4Front Technologies released its source code and provided it under the GPL. Does not support as wide a variety of hardware as ALSA, but does better for some.
http://www.opensound.com/ || ossAUR

Sound servers

  • PulseAudio — A very popular sound server, usable by most common desktop Linux applications today. Very good at handling multiple simultaneous inputs, and can do network audio as well. Very easy to get working, in fact very often all one has to do is install the package and it will automatically run. Not intended for pro audio low-latency applications.
http://www.pulseaudio.org/ || pulseaudio
  • The Jack-Audio-Connection-Kit — The older edition of a sound server for pro audio use, especially for low-latency applications including recording, effects, realtime synthesis, and many others. Although this edition is the older, it retains a very active and devoted development team, and which edition to use is not clear, trial and error is often helpful.
http://jackaudio.org/ || jack
  • JACK2 — Also called jackdmp, this is the newer edition of JACK, designed explicitly towards multi-processor systems, and also includes transport over network.
http://trac.jackaudio.org/wiki/Q_differenc_jack1_jack2 || jack2
  • JACK2 with D-Bus — This is JACK2 with a different startup architecture, capable of running well at all times in coexistence with PulseAudio and non-JACK applications, which is a problem for the other two categories of JACK setup.
http://trac.jackaudio.org/wiki/WalkThrough/User/jack_control || jack2-dbus
  • NAS — This is a sound server supported by some major applications.
http://www.radscan.com/nas/nas-links.html || nasAUR

See also