Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

Auto-dépannage (Dans l'antémémoire)



1. Introduction


Hé toi, joyeux assujetti social ! Le jour est venu ! Tu es sur le point de créer la musique de l'avenir avec ton ordinateur surpuissant, ta carte son zéro latence, et tu es gonflé à bloc. Tu viens d'installer la dernière version de ta distribution GNU-Linux préférée et la musique que tu t’apprêtes à livrer à la postérité va faire ressembler les Dafts Punk à Patrice et Mario chantant "Étoile des neiges " (à moins que ce ne soit le contraire !).

Sauf que, pour l'instant, malgré tes efforts répétés, rien ne sort des tes enceintes qui t'ont coûté un bras, et ça t'énerve !

Avant de sacrifier à la hache ton matériel si chèrement acquis (mais si, mais si, tu y as pensé, avoues le !), pas de panique, LinuxMao est là pour t'aider à t'en sortir.



2. Y a t'il du son ?


Il y a de nombreuses raisons pour lesquelles le son peut être absent. C'est pourquoi, tu dois procéder par ordre. Nous partons du principe que ton ordinateur fonctionne, que les différents périphériques fonctionnent (carte son interne, enceintes, casques,connecteurs,...), que tu es sur internet (puisque tu lis cette prose édifiante) et que tes oreilles sont propres.

Avant toute chose, je te propose de chercher Dogmazic ou Soundcloud (ou n'importe quoi qui fait du bruit sur la toile !) sur ton navigateur avec la carte son interne, pour évaluer si ton système gère le son correctement. Si tu passes ce test avec succès, tu es sûr que tout est en place et tu peux passer au chapitre suivant. Sinon, il est hautement probable que le problème soit soit matériel, soit au niveau du noyau linux et, en particulier, d'ALSA.

ALSA
ALSA est, comme c'est indiqué dans cette page une collection de pilotes de cartes sons PCI, USB et autres, ainsi qu'un serveur son/couche multimédia. Mais ALSA ne fait pas tout : en particulier, il ne gère pas suffisamment pour nous, utilisateurs "MAO", les relations entre différents logiciels.




2.1. La carte son


Malheureusement, toutes les cartes sons ne fonctionnent pas avec linux. Le geste qui sauve est de regarder s'il y a des informations dans le Portail Matériel -> Liste de matériel par marque puis, si tu n'en trouves pas à cet endroit, tu peux faire une recherche sur la toile avec "le nom de ta carte son" et "linux".
Le problème est quelquefois lié à la cohabitation de plusieurs cartes son : la carte interne, souvent limitée et une carte en plus, plus orientée MAO. La cohabitation des 2 est quelquefois problématique, en particulier leur ordre de préséance doit quelquefois être fixé.



2.2. La connexion


De nombreux types de connexion existent (PCI, USB, Firewire, Thunderbolt, PC Card...). Malheureusement, tout n'est pas toujours supporté par linux et, là encore, toutes les cartes ne fonctionnent pas forcément. Rappelle toi qu'internet est ton ami, et les forums ici aussi.

Note importante: si tu as une carte son Firewire (port IEEE 1394), il te faudra utiliser FFADO à la place d'ALSA. Je te conseille de lire cette page.



2.3. Le démon ALSA


Une commande intéressante, quand ça ne fonctionne pas, permet de voir si les modules associés au démon ALSA sont chargés. La commande est
lsmod|grep snd

  • lsmod te parles des modules chargés par le noyau linux,
  • | est un "pipe", c'est à dire une redirection,
  • grep snd recherche tous les modules chargés dans lesquels on retrouve le mot "snd".



2.4. En pratique


On récapitule : pas de son. Il est possible de lever le doute sur ton matériel en essayant une distribution "live" sur un CD ou une clé USB (ubuntustudio, Kxstudio,LibraZik, ou une autre distrib' live généraliste).

En effet, si, avec une distribution live, en essayant le navigateur et dogmazic (par exemple) tu n'as toujours pas de son, alors c'est, à priori, un problème matériel physique, ou bien de reconnaissance d'un matériel (au niveau noyau, pilote ALSA, ...). Tu peux aiguiser la hache ! biggrin

Dans le cas contraire, tu as du son, c'est ta configuration qui plante. Un conseil est de réinstaller le tout, après avoir sauvegardé ce qui est important évidemment, parce que, réparer une config se finit souvent en prise de tête, et tu auras plus vite fait de réinstaller.

Mettons que tu ne veux/peux pas réinstaller, alors, il faut chercher ALSAMixer, parce qu'il est possible que ta carte son interne soit muette. Je te laisse lire la page ALSAMixer correspondante pour dénouer ton problème. Sinon, tu as aussi une page dédiée au dépannage d'ALSA.

Enfin, tu as le forum qui te permettra d'avancer dans les problèmes d'ALSA non abordés ici.



3. Il y a du son !


Ok, on sait que le système fonctionne. Il ne reste plus qu'à faire de la musique. Pour cela, tu as grandement intérêt à utiliser JACK.

JACK
JACK est un serveur de son temps-réel pensé pour la basse-latence. Il nous intéresse particulièrement pour la production musicale, mais la plupart des utilisateurs de GNU-linux ne fabriquant pas de musique, Pulseaudio (ou autre) leur est bien plus utile.


Pulseaudio
Pulseaudio est un serveur de son généraliste. Son domaine de compétence est de gérer le son, gérer une partie des périphériques et les programmes pour écouter simplement ta musique préférée, produire les sons système,...etc



En gros, si tu veux écouter de la musique sur ton laptop, Pulseaudio est suffisant, mais si tu veux faire de la musique, JACK est très conseillé. Nous verrons plus tard qu'il existe des passerelles entre JACK et Pulseaudio.



4. Hit the road, Jack


Donc, tu veux faire fonctionner jack. Sauf que tu es légitimement inquiet quand on t'explique qu'il y a 2 Jack (Jack1 et Jack2), et qu'il y a plein d'interfaces disponibles (Qjackctl, Catia, Claudia, Patchage, Gladish,...). C'est normal, c'est le libre, l'émulation est encouragée, et plusieurs projets peuvent être similaires.


4.1. Latence


Pour enregistrer de la musique, tu auras besoin d'une latence convenablement faible. Plus la latence est faible, plus l'ordinateur, en particulier le processeur principal, travaille. Une latence supérieure à 10 ms renvoie un décalage audible entre le son enregistré et le son joué, ce qui n'est pas souhaitable. Mais une latence trop faible t'occasionnera des désynchronisations (Xruns Image ). Chaque élément de ton ordinateur (mémoire vive, disque dur, carte graphique, processeur, interruptions,...) influe sur la latence.


4.2. Désynchronisation


Les désynchronisations se manifestent souvent par des bruits audibles sur ton fichier d'enregistrement, c'est pour cela qu'il faut les éviter. Tu peux voir le nombre de désynchronisations en rouge sur l'écran principal de Qjackctl !


4.3. On y va !


Tu as donc installé JACK, et ses dépendances. Peu importe que tu aies installé JACK1 ou JACK2, les différences ne sont pas très importantes à ce niveau. Pour l'interface, on va se focaliser sur Qjackctl, il sera facile de passer à une autre interface, si tu le souhaites.

Le cœur plein d'espoir et la larme à l’œil, après avoir récité dix fois la page jack premier lancement, tu t’apprêtes à appuyer sur le bouton "Démarrer" de QjackCtl.



5. Jack ne démarre pas


Dans un premier temps, tu as quelques commandes sur un terminal qui te donneront des informations. C'est important car, si tu poses des questions sur le forum, on te demandera les résultats de ces commandes :



5.1. La ligne de commande


Sous GNU-linux, tu n'échappes pas longtemps à la ligne de commande dans un terminal. wink

  • la commande suivante permettra de savoir quelle carte son et/ou interface MIDI est connectée :
    cat /proc/asound/cards
  • la commande :
    aplay -l
    liste les cartes sons disponibles pour ALSA sur ton système.
  • la commande lsusb liste les composants USB (si tu as une carte son usb) :
    sudo lsusb
    ou lspci liste les composants PCI (si tu as une carte son PCI) :
    lspci
  • tu peux faire aussi
    dmesg|less
    • dmesg te donne les informations de démarrage de ta machine,
    • | est un "pipe" qui dirige le flux vers le programme suivant, en l’occurrence "less"
    • less te permet de naviguer plus facilement dans le flux en question.
Essaye de voir si des périphériques ALSA ou bien ta carte son, apparaissent dans les messages.



5.2. Les autres aides


Tu peux aussi éplucher cette page qui te donnes des infos sur Qjackctl.

Regarde la FAQ jack, qui te donnera tous les détails.

Enfin, jack te parle peut aussi te donner des indications.



6. Jack a démarré, mais ne démarre plus


Pour des raisons inconnues, il arrive que le fichier config de Qjackctl soit corrompu et ne permette plus de démarrer. À ce moment, essaye de le renommer (l'effacer peut être dommageable si le problème est ailleurs). Il doit se trouver dans : /home/mon_utilisateur/.config/rncbc.org/.

Évidemment, mon_utilisateur est le nom sous lequel tu te connectes !



7. Jack démarre, mais il n'y a pas de son


Si JACK démarre, le son passe nécessairement. Maintenant il te faut t'y retrouver dans les tuyaux : là, on rentre dans le domaine de meterbridge.



8. Jack démarre, joue du son, mais il y a beaucoup de désynchronisations


Il faut avoir le moins possible de désynchronisations, voire par du tout. Dans le cas contraire, il y a quelques mesures à prendre.



8.1. Configuration du système


Soit ton système est mal configuré (Temps réel, gestion des autorisations, gestion des interruptions). Je te conseille la page PAM.



8.2. Le noyau basse-latence


Nous n'en avons pas encore parlé, mais ça peut être important. Pour faire de la musique, surtout si on veut enregistrer, cela t'aide à favoriser le "temps réel" (Real Time). À ce moment là, c'est préférable quand le noyau est prévu pour, et qu'un certain nombre de dispositions sont prises. C'est expliqué à la page Temps-réel pour les applications.

Pour comprendre le temps réel, lorsque tu regardes une vidéo quelconque sur la toile, périodiquement une pub qui s’intercale et prends la main. Quand c'est un streaming, c'est juste odieux, mais quand tu enregistres, ça te flingue irrémédiablement ta session. Pour éviter ça, la plupart des logiciels de MAO sont conçus pour ne pas être interrompus : on appelle ça la gestion du temps réel. Ça ne fonctionne pas toujours aussi bien qu'on le voudrait, ça "saute" parfois, cela provoque une désynchronisation.



8.3. Trop de travail


Si ton système est trop gourmand (Gnome3, KDE, nombreux services comme l'impression, le wifi, un serveur internet, une application qui fait le café,....). Tu as intérêt à éliminer tout programme qui ne te sert à rien pour la MAO. En premier lieu, il vaut mieux prendre un gestionnaire de fenêtres peu gourmand en ressources (MATE, XFCE, LXDE,..). Ensuite, il faut désactiver les services inutiles dont tu n'as pas l'usage. Les utilisateurs d'Ubuntu peuvent mettre à profit cette page Image .



8.4. C'est l'age


Si ta machine est vieille, n'a pas beaucoup de ressources (mémoire vive, disque dur, swap,...). Une des plus grandes forces de Linux est de ne pas provoquer l'obsolescence programmée Image . Tu peux faire tourner des machines de 15 ans d'age avec les logiciels les plus récents. Des distributions de type minilinux Image sont prévues pour ce genre de machine. Mais tu auras du mal à battre des records de vitesse avec une caisse à savon smile. Tu peux envisager d'utiliser un soft peu gourmand en ressource comme ecasound. Une autre option est d'utiliser cet ordinateur comme expandeur dans une configuration plus large, par exemple sur un réseau. Cela diminue la charge du plus gros ordinateur et le petit ordinateur garde une utilité.



9. Jack et Pulseaudio (sont dans un bateau ! )


Qu'est ce qui se passe si tu veux faire tourner JACK pour créer cette symphonie que le monde attend, et écouter Dogmazic sur Firefox (qui préfère Pulseaudio) en même temps ? Bonne nouvelle ! Tu peux faire cohabiter JACK et Pulseaudio ! Tout est expliqué dans cet article.

Si tu utilises Cadence, le pont "JACK <-> Pulseaudio" est déjà inclus (sauf si tu l'as compilé toi même) !



10. Le MIDI


10.1. Mise au point


Le MIDI ne produit pas de son par lui même, c'est du code qui permet à plusieurs machines et/ou logiciels de communiquer des informations liées à du son. Un séquenceur comme seq24 doit être interfacé avec d'autres logiciels produisant du son (par exemple qsynth sur lequel tu auras préalablement chargé une banque de son *.sf2) pour que tu puisses entendre quelque chose.

Autre exemple, VLC media player sous linux peut lire les fichiers MIDI (il n'a pas cette fonctionnalité sous Windows). Mais pour que ça fonctionne, il faut configurer l’élément fluidsynth inclus en lui attribuant, encore une fois, une banque de son *.sf2.



10.2. Débogage


Le débogage des informations MIDI est grandement facilité par des utilitaires comme Qmidiroute.
Ce dernier permet d'afficher les informations MIDI disponibles, et de les modifier à la volée si besoin.



10.3. Pont ALSA MIDI<->JACK MIDI


Certains programmes fonctionnent sur ALSA-midi et certains sur JACK-midi: or tu souhaiteras certainement les connecter entre eux : pour cela, il te faut lancer un démon en ligne de commande : a2jmidid.

Après avoir lancé Jack, tu tapes sur un terminal :

a2jmidid -e

ou
a2j -e

et miracle, tu pourras les connecter ensemble par l'entremise de Qjackctl ou autres.

Dans Qjackctl, tu as un moyen de le faire automatiquement au démarrage : pour cela, tape
a2jmidid -e &
dans la ligne "after start-up" dans la partie "Setup > Options de QJackCtl", comme ça, il démarre automatiquement quand JACK démarre.

11. Aide à la configuration du temps réel.


Le forum anglophone Linux Musicians Image propose un script qui te permettra de tester ta configuration, concocté par le dénommé @raboof. Tu peux le récupérer à l' adresse https://github.com/raboof/realtimeconfigquickscan Image .

12. Conclusion


Ça y est, ton système est opérationnel. Si, malgré nos conseils, ton système ne fonctionne pas, tu peux tenter autre chose :

  • essayer de booter sur une live-distribution spécialisée audio, (LibraZik, ubuntuStudio, AV Linux, KXStudio,...). Même plus toute jeune, elle peut te permettre de voir rapidement si ton problème concerne le matériel, ou le logiciel. Mon conseil est de ne pas hésiter à réinstaller après sauvegarde une distribution qui pose problème (ou à en installer une autre !), selon le vieil adage qui veut que " Soit ça fonctionne rapidement, soit ça ne fonctionnera jamais correctement !"
  • soit tu poses ta question sur le forum, en essayant d'être précis (quelle distribution, quel matos, quel soft, quel problème,...?) et la communauté se fera un plaisir de tenter d'y répondre.



13. Liens et commentaires



[+]


Collaborateur(s) de cette page : olinuxx , tenryu et allany .
Page dernièrement modifiée le Jeudi 25 juin 2020 13:52:36 par olinuxx.
Le contenu de cette page est licencié sous les termes licence.

Documentation [Afficher / Cacher]

Faire un don
[Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

olinuxx, 11:48, ven. 15 mars 2024: Bonjour et bienvenue à Jerry cool
calixtus06, 18:03, mer. 13 mars 2024: Bonjour et bienvenue à tanguero :-)
olinuxx, 11:01, dim. 10 mars 2024: Bonjour et bienvenue à lolo cool
bda, 16:59, sam. 09 mars 2024: Chapeau pour l'édito. Vous êtes au top les gars :-)
allany, 07:20, jeu. 07 mars 2024: Ça ne fait jamais de mal, c'est l'éditorial ! [Lien]
olinuxx, 19:52, mer. 06 mars 2024: Bonjour et bienvenue à TrkNrk cool
calixtus06, 11:17, mar. 05 mars 2024: Bonjour et bienvenue à D752 :-)
calixtus06, 18:59, lun. 04 mars 2024: Bonjour et bienvenue à Hborsa et Adjudandouille :-)
olinuxx, 18:34, jeu. 29 Feb 2024: Bonjour et bienvenue à anto45500 cool
jujudusud, 23:38, mar. 27 Feb 2024: Venez participer à la joute numéro 17 : [Lien]
calixtus06, 18:36, jeu. 22 Feb 2024: Bonjour et bienvenue à nikartri et rckloar :-)
calixtus06, 10:15, mer. 14 Feb 2024: Bonjour et bienvenue à smonff, Alphascorpii, tadumtss et letoII :-)