Chargement...
 
Skip to main content

Historique: Éléments audio du système

Aperçu de cette version: 52

Attention ! Page en cours de ré-écriture (pianoliv - mai 2012)

Cette page un peu technique présente les éléments audio d'un système GNU/Linux, leurs rôles et leurs imbrications.




Introduction

Le système GNU/Linux est construit par couches. Vous avez peut-être déjà entendu parlé pour commencer du noyau Linux qui est une couche de logiciels liés intimmement au matériel, et du système GNU qui se greffe par dessus. Les éléments audio du système n'échappent pas à cette règle et se divisent en plusieurs grandes catégories.

Pilote :
Il s'agit du logiciel invisible qui va prendre le contrôle de votre carte son (ou de votre surface de contrôle).
Le type de carte son conditionne le choix du pilote, par exemple FFADO pour les cartes son firewire et ALSA pour le reste, en gros. Ce logiciel fonctionne dans la couche noyau et fait le lien entre les périphériphes matériels et les applications audio, souvent en passant par un...

Serveur son :
Le serveur son est lui aussi souvent invisible, mais il s'agit d'un logiciels comme les autres, que vous pouvez généralement lancer/arrêter au besoin. Son rôle est celui d'un DJ, qui mixe les différentes pistes arrivant de plusieurs applications produisant du son simulatément. Chaque environnement de bureau (comme KDE ou Gnome) possède son propre serveur son plus ou moins basique pour mixer les sorties audio du lecteur multimédia, du navigateur internet, des notifications système etc. Mais le top pour la MAO, c'est le serveur son optimisé pour le temps-réel : Jack.

framework multimédia :

Application audio :
Un logiciel audio est écrit pour fonctionner avec un ou plusieurs des serveurs son mentionnés.
Image
Pour plus de simplicité, on privilégiera l'utilisation d'un seul serveur son et d'applications directements compatibles : jack et les applications compatibles jack sont la référence en MAO.


Image
Mais le monde n'est parfois pas aussi simple, et on utilisera parfois des adapatateurs entre différentes applications et serveurs son, ce qui va du shéma du plus simple...

Image
...au shéma le plus complexe...


Image
...et encore, vous n'avez pas tout vu !

Les pilotes/drivers

Les différents pilotes :
  • ALSA (Advanced Linux sound Architecture) : Ensemble de pilotes qui gère de façon unifiée un très grand nombre de cartes son PCI et USB. Les modules ALSA se greffent au noyau et il en existe un grand nombre pour différents types de matériel.
    Alsa possède également un mixeur/serveur son rudimentaire, appelé ↓ Dmix.
  • FFADO (Free Firewire Audio Driver) : Projet expérimental qui vise à faire fonctionner les cartes son Firewire. Il est amené à rejoindre le projet ALSA une fois complet, mais pour le moment seule une poingnée de cartes son sont entièrement supportées.
  • OSS (Open Sound System) : Ancien ensemble de pilotes pour d' anciennes cartes sons PCI. Il peut encore être trouvé dans certains studios, particulièrement certaines "vieilles" tables à potards dissimulant beaucoup sous leur capot. La version d'OSS inclue dans le noyau est considérée comme obsolète mais l'équipe maintient une version actuelle pour les quelques rares cartes-son qui demandent ce pilote.

Les serveurs son

Un serveur son est un point central dans un bureau pour tout ce qui concerne le son. C'est à dire que les différentes applications qui ont besoin de produire du son vont le contacter et qu'il gérera la cohabitation des sons de ces différentes applications.

Exemple :

application n°1 : Salut serveur son !

serveur son : Yop toi !

application n°1 : j'ai besoin que tu produises un petit jingle pour mon utilisateur

serveur son : OK, c'est fait

application n°1 : merci

serveur son : de nada !

application n°1 : hop, il se lance un film, tu peux gérer la partie audio ?

serveur son : no problème, c'est mon job

application n°1 : cool 😊 Merci, à plus tard 😉

application n°2 : Coucou serveur son

serveur son : Hey ! Salut toi, ça faisait un bail !

application n°2 : ouép, j'étais plus trop utilisé , dis moi, tu peux balancer la petite musique de mon démarrage steuplé ?

serveur son : pas de souci, en plusse je l'aime bien celle-là 😎

application n°2 : merci, je te kiffe grave aussi 😉

serveur son : héhéhé

application n°2 : ouahou, serveur son, mon utilisateur veut m'éteindre ! Tu peux balancer un BIP pour qu'il valide son choix ?

serveur son : oué, il matte un film en ce moment, ça l'emmerde sûrement que ta musique d'intro passe en même temps. T'inquiète pas trop, il t'utilisera certainement après pour chopper la bande originale 😉

application n°2 : ok, merci, à tout à l'heure alors, content de te revoir 😎

serveur son : a+


Pourquoi plusieurs serveurs son ?
Ces éléments existent parce qu'il est possible qu'ils existent ! C'est leur liberté.
La M.A.O. a des besoins précis, frères avec ceux des studios professionnels. Comme nous sommes libres d'utilisation, de configurations et de modifications, nous pouvons créer une architecture système taillée à la mesure de ces besoins.
Sachant que arts/esd/gstreamer ne sont pas adaptés à la MAO, il convient d' utiliser JACK, qui peut tourner en temps-réel. Les principaux logiciels de son et/ou Midi peuvent s' y connecter.

Les différents serveurs son :
  • jack : Le serveur de son basse-latence qui permet d'inter-connecter et de synchroniser un grand nombre de logiciel-audio ensemble. En MAO sous Linux, il est devenu incontournable et nous privilégions son utilisation.
  • ALSA_Dmix : Mixeur intégré à ALSA, on peut parler de mixeur de bas-niveau. Il permet un mixage logiciel lorsque la carte son est dépourvue de mixeur matériel.
    L'installation par défaut, vue d'un ensemble applicatif
    Après la configuration correcte de DMIX
  • PulseAudio : c'est un serveur de son "dernière génération". Il s'intercale entre les applications (ou les frameworks multimédias) et le gestionnaire de son (ALSA, OSS, ou autres). Il permet une facilité d’utilisation avec branchement « à chaud ». Il permet aussi de diffuser le son en réseau. L'intégration est en cours sur les différentes distributions car il est destiné à remplacer différents serveurs son du fait de sa polyvalence, de sa souplesse et de sa puissance.
  • ESD : c'est le moteur de son du bureau Enlightenment, mais aussi Gnome et XFCE. Possédant le plus fort taux de latence de tous, il est amené à être remplacé par Pulseaudio.
  • aRts : c'est le moteur de son du bureau Kde. Utilisé jusqu'à la version 3.5.3 de Kde, il est remplacé par Phonon à partir de kde 4.
  • Phonon : c'est le remplaçant de arts. Nous verrons à l'usage quelles sont ces ressources. Mais en tant que frameworks de haut niveau, il peut être intéressant pour une utilisation Mao.
  • eSound :
  • Asd :
  • SDL : on ne s'étendra pas dessus ici. Sachez simplement qu'il est capable de se connecter à alsa et à oss, et de tourner en même temps sans encombre qu'une application utilisation le routage arts-> alsa. Il est utilisé principalement par les jeux vidéos et permet un mixage de "mi-niveau" très facilement.



Jack ET les autres serveurs son :
Il est possible dans certains cas de faire communiquer ensemble plusieurs serveurs son.
Pour ce qui nous intéresse, il s'agit principalement de router différents serveurs son de l'environnement de bureau vers jack, voir la page : jack_et_les_autres_serveurs_son



frameworks

Les infrastructures du son
  • Gstreamer : conçu pour Gnome et pour un lecteur à l'origine, celui ci a vite grandi et s'est doté de l'ensemble des fonctions indispensables pour un framework de haut-niveau. Avec en plus des fonctions réseau assez intéressantes.
  • Phonon
  • Xine
  • arts
  • esd




Liens



[+]
Notes de travail
forum lié : tiki-view_forum_thread.php?comments_parentId=36424&forumId=8

À intégrer dans cette page :
Les bibliothèques de compatibilité cross-plateforme :

Historique

Avancé
Information Version
Sat 13 mai 2023 10:08 olinuxx 90
Afficher
Fri 12 mai 2023 17:28 jujudusud laius sur PipeWire. 89
Afficher
Fri 12 mai 2023 08:14 olinuxx + min/MAJ + cohérence wiki /mise en page + ponctuation + coquille + 88
Afficher
Fri 12 mai 2023 00:35 jujudusud Ajout d'un lien vers PipeWire pour les serveurs son dans GNU/Linux. 87
Afficher
Mon 24 Apr 2023 13:19 jujudusud Suppression des serveur son remplacés par d'autres. 86
Afficher
Sat 01 Sep 2018 10:34 Epiqure Petite correction du "parlé" en "parler" 85
Afficher
Fri 06 Nov 2015 14:25 olinuxx Recherche et remplacement en masse 84
Afficher
Thu 11 Sep 2014 13:41 olinuxx typos 83
Afficher
Thu 07 Nov 2013 13:41 pianolivier wiki_up conversion 82
Afficher
Mon 04 Nov 2013 17:11 anonymous wiki_up conversion 81
Afficher
Mon 16 Sep 2013 10:35 pianolivier +1 lien 80
Afficher
Sun 14 Jul 2013 05:08 olinuxx + 2 alias 79
Afficher
Wed 27 Feb 2013 20:05 utilisateur_anonyme2 78
Afficher
Wed 27 Feb 2013 20:05 utilisateur_anonyme2 77
Afficher
Sat 14 Jul 2012 09:22 Djiboun grammaire 76
Afficher
Thu 28 Jun 2012 15:43 olinuxx + un alias 75
Afficher
Mon 21 mai 2012 10:24 pianolivier modif lien(s) interne(s) 74
Afficher
Sat 19 mai 2012 19:45 pianolivier 73
Afficher
Sat 19 mai 2012 19:20 pianolivier renommage de la page +alias(présentation des éléments audio) 72
Afficher
Thu 17 mai 2012 21:55 pianolivier modif lien(s) interne(s) 71
Afficher
Wed 16 mai 2012 12:59 olinuxx coquilles 70
Afficher
Tue 15 mai 2012 20:06 pianolivier 69
Afficher
Tue 15 mai 2012 20:05 pianolivier 68
Afficher
Tue 15 mai 2012 20:05 pianolivier 67
Afficher
Tue 15 mai 2012 19:57 pianolivier 66
Afficher
Tue 15 mai 2012 19:54 pianolivier 65
Afficher
Tue 15 mai 2012 19:52 pianolivier 64
Afficher
Mon 14 mai 2012 16:32 pianolivier 63
Afficher
Mon 14 mai 2012 16:29 pianolivier 62
Afficher
Mon 14 mai 2012 16:26 pianolivier 61
Afficher
Mon 14 mai 2012 16:25 pianolivier fini ? 60
Afficher
Mon 14 mai 2012 16:22 pianolivier 59
Afficher
Mon 14 mai 2012 16:16 pianolivier 58
Afficher
Mon 14 mai 2012 16:03 pianolivier 57
Afficher
Mon 14 mai 2012 16:02 pianolivier 56
Afficher
Mon 14 mai 2012 16:01 pianolivier 55
Afficher
Mon 14 mai 2012 15:58 pianolivier 54
Afficher
Mon 14 mai 2012 15:56 pianolivier 53
Afficher
Mon 14 mai 2012 15:56 pianolivier 52
Afficher
Mon 14 mai 2012 15:55 pianolivier 51
Afficher
Mon 14 mai 2012 15:50 pianolivier 50
Afficher
Mon 14 mai 2012 15:49 pianolivier 49
Afficher
Mon 14 mai 2012 15:47 pianolivier 48
Afficher
Mon 14 mai 2012 13:44 pianolivier 47
Afficher
Mon 14 mai 2012 13:43 pianolivier 46
Afficher
Mon 14 mai 2012 13:38 pianolivier 45
Afficher
Mon 14 mai 2012 13:17 pianolivier 44
Afficher
Mon 14 mai 2012 13:00 pianolivier 43
Afficher
Mon 14 mai 2012 12:59 pianolivier +alias(ComposantsAudioLinux) 42
Afficher
Mon 14 mai 2012 12:52 pianolivier ajout des infos de la page ((ComposantsAudioLinux)) 41
Afficher
  • «
  • 1 (en cours)
  • 2