Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
wiki:audio_layers_overview [2009/09/20 12:25] – created raboofwiki:audio_layers_overview [2013/06/02 15:45] (current) – external edit 127.0.0.1
Line 3: Line 3:
 ===== Kernel layer ===== ===== Kernel layer =====
  
-The most low-level layer is the kernel layer, which takes care of the communication with the hardware. This role is usually fulfilled by [[ALSA]] or [[OSS]]. +The most low-level layer is the kernel layer, which takes care of the communication with the hardware. This role is usually fulfilled by [[apps:all:ALSA]] or [[apps:all:oss_free|OSS]]. 
  
 Most sound cards do not support 'hardware mixing', meaning each output can only play one stream at a time. This is, of course, inconvenient: you might want to play sounds from more applications at a time. Mixing is one of the most important operations performed by the higher-level layers. Most sound cards do not support 'hardware mixing', meaning each output can only play one stream at a time. This is, of course, inconvenient: you might want to play sounds from more applications at a time. Mixing is one of the most important operations performed by the higher-level layers.
Line 11: Line 11:
 ===== ALSA userspace ===== ===== ALSA userspace =====
  
-On top of the kernel [[ALSA]] layer, [[ALSA]] also provides some user-space plugins, including mixing with [[Dmix]]. +On top of the kernel [[apps:all:ALSA]] layer, [[apps:all:ALSA]] also provides some user-space plugins, including mixing with [[http://alsa.opensrc.org/DmixPlugin|Dmix]]. 
  
 ===== Sound servers ===== ===== Sound servers =====
Line 19: Line 19:
 ==== Jack ==== ==== Jack ====
  
-[[Jack]] is the standard sound server for audio production work.+When you have your Linux Proaudio Distribution installed, it's important to know [[apps:all:Jack]] (Jack Audio Connection Kit). [[apps:all:Jack]] is the professional sound server daemon on Linux, that provides real-time, low latency connections for both audio and MIDI data between applications that supports [[apps:all:Jack]]. 
 + 
 +Some good points to start: 
 + 
 +  * [[https://www.youtube.com/watch?v=fMz6fDGBnA4| Video Tutorial:]] JACK Audio Server: Basic Explanation, Install, and Setup 
 +  * [[http://www.linuxjournal.com/content/friends-jack| Friends Of JACK]] Article about JACK in LinuxJournal. 
 +  * [[http://www.youtube.com/user/AutoStatic3000| Youtube channel of Linuxaudio-user AutoStatic]] 
 +  * [[http://www.youtube.com/watch?v=43ES7p4ejX0&feature=relmfu| Youtube Channel of Linux & Ardour user Kris (metalx1000)]] 
 +  * [[http://en.flossmanuals.net/ardour/index/?q=flossmanual | Ardour Floss Manual]] 
 +  * [[http://linuxhomerecording.blogspot.com/ | Linux Homerecording Blog]] Making noise with Open Source! 
 +  * [[https://github.com/ccherrett/oom/wiki | The OpenOctave Project WIKI]] 
 +  * [[http://www.linuxjournal.com/user/800764/track|Dave Phillips writing for Linuxjournal.com]]
  
 ==== PulseAudio, ESounD, GStreamer, aRts ==== ==== PulseAudio, ESounD, GStreamer, aRts ====
  
-Other sound servers such as [[PulseAudio]], [[ESounD]], [[GStreamer]] and [[aRts]] serve various desktop audio needs, and have lots of overlapping functionality, but are not specifically focused towards audio production like [[Jack]].+Other sound servers such as [[apps:all:PulseAudio]], [[apps:all:ESounD]], [[apps:all:GStreamer]] and [[apps:all:aRts]] serve various desktop audio needs, and have lots of overlapping functionality, but are not specifically focused towards audio production like [[apps:all:Jack]]
 + 
 +===== Compatibility layers ===== 
 + 
 +An application that does not use a sound server is generally written for either [[apps:all:OSS_free|OSS]] (in which case it would use /dev/dsp*) or [[apps:all:ALSA]] (in which case it would use /dev/snd/* though the [[apps:all:ALSA]] libraries). 
 + 
 +This would mean [[apps:all:OSS_free|OSS]] would not work on systems using [[apps:all:ALSA]] and vice-versa. Luckily, both projects provide a 'compatibility layer' to work with each others' applications.
wiki/audio_layers_overview.1253442317.txt.gz · Last modified: 2009/09/20 12:25 by raboof