Avant de se lancer dans des diagnostics avancés, assurez-vous de ne pas avoir quitté Windows avec une mise en veille prolongée. Cette fonctionnalité permet en effet de relancer cet OS rapidement, mais ne permet pas à Ubuntu d'utiliser le périphérique de sortie audio.
Nous avons vu précédemment que certaines applications utilisent encore OSS. Afin de pouvoir exploiter ces programmes, deux possibilités s'offrent à vous :
Afin d'activer alsa-oss il faudra lancer l'application OSS en ligne de commande comme ceci :
aoss votreapplication
Il est également possible d'éditer directement vos menus pour en modifier la commande.
Tentez en installant la dernière version des pilotes ALSA.
Installez le paquet linux-backports-modules-alsa-karmic-generic
Installez le paquet linux-backports-modules-headers-oneiric-generic
(Réglage des cartes sons sur carte Intel) Pour éviter le claquement des haut-parleurs avant le premier son et en cours d'utilisation, il faut désactiver la temporisation de mise hors service de la carte son.
éditez le fichier /etc/modprobe.d/alsa-base.conf et ajouter un # en début de ligne pour qu'elle soit reconnue comme un commentaire :
#options snd-hda-intel power_save=10 power_save_controller=N
Sauvegarder puis redémarrer le PC
éditez le fichier /etc/pulse/default.pa et commentez la ligne (ajouter # en début de ligne):
#load-module module-suspend-on-idle
Cette ligne suspend le serveur de son lorsque celui-ci n'est pas utilisé depuis un certain temps, ce qui génère un claquement des haut-parleurs lorsque celui-ci est ré-activé (lecture d'un son ou démarrage d'un programme utilisant le son par exemple).
Ne pas oublier de sauvegarder, puis de tuer et re-démarrer le démon:
pulseaudio -k pulseaudio -D
Copier le fichier /etc/pulse/default.pa dans le répertoire $HOME/.pulse/ et ajouter ces 2 lignes à la fin de ce fichier :
set-sink-volume 0 0xb333 set-sink-mute 0 no
à adapter le cas échéant : le 1er 0 après les noms des variables désigne le périphérique par défaut et la valeur - en hexa - après 0x vaut 61% du contrôle mixer (10000 = 100%)
Au démarrage suivant, le son devrait être à 61%
Si ça ne marche pas, remplacer le 0 désignant le périphérique par sa "définition" complète telle que vue par pulseaudio (exemple : alsa_output.pci_10de_7fc_sound_card_0_alsa_playback_0 ). On peut vérifier le résultat en tapant dans un terminal :
pacmd "dump"|grep set-sink
ce qui renvoie une réponse du type :
set-sink-volume alsa_output.pci_10de_7fc_sound_card_0_alsa_playback_0 0xb333 set-sink-mute alsa_output.pci_10de_7fc_sound_card_0_alsa_playback_0 no
source : http://forum.ubuntu-fr.org/viewtopic.php?pid=2978427
Il arrive parfois que alsa mixer soit mal configuré lors de l'installation. Il est alors nécessaire de le configurer manuellement. Pour cela taper dans un terminal:
alsamixer
Utilisez les flèches gauches et droites pour naviguer, haut et bas pour augmenter/baisser le son et m pour activer/désactiver le mode silencieux (marqué "MM").
Pour une carte interne (PCI ou intégrée sur la carte mère):
lspci | grep -i audio
Pour une carte connecté via usb:
lsusb | grep -i audio
Vous obtiendrez par exemple:
00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 01) ou 00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01) ou 00:05.0 Multimedia audio controller: nVidia Corporation nForce Audio Processing Unit (rev a2) 00:06.0 Multimedia audio controller: nVidia Corporation nForce2 AC97 Audio Controler (MCP) (rev a1) ou 01:09.0 Multimedia audio controller: Ensoniq ES1370 [AudioPCI] (rev 01)
Et pour avoir le chipset :
cat /proc/asound/pcm
Dans cet exemple, chaque carte son a bien été détectée et un module du noyau linux la pilote (pas visible sur cette commande ?).
groups
dans un terminal et vérifiez que audio apparait bien dans la liste des groupes auquel appartient l'utilisateur. Dans le cas contraire, rajouter l'utilisateur à ce groupe :
sudo adduser $USER audio
Attention ! Si vous utilisez PulseAudio, les utilisateurs ne doivent *pas* être dans le groupe audio ! Donc il ne faut surtout pas appliquer cette consigne (sinon on peut avoir un son haché dans certaines applications, des absences de son lors du changement rapide de session utilisateur…). Voir ici ou la documentation PulseAudio qui explique cela.
sudo /etc/init.d/alsa-utils reset sudo /etc/init.d/alsa-utils restart
sudo /sbin/alsa-utils reset & sudo /sbin/alsa-utils restart
/etc/modprobe.d/alsa-base.conf /etc/alsa /etc/pulse ~/.pulse
Si le son craque ou grésille dans un jeu, il est probable que ce jeu utilise SDL. Il faut installer le paquet libsdl1.2-oss. Ceci implique de fermer toutes les applications nécessitant le son, puis de lancer le logiciel.
Installer le dépôt et le paquet suivant comme préconisé ici (en anglais) peut résoudre votre problème :
Ensuite redémarrez.
Allez dans le contrôleur de volume → paramètres Vérifier ceci :
Tone :coché
micro +20dB : sans importance sauf si vous avez un microphone.
IEC958 Optical Raw :décoché
"nom de votre carte audio" Output jack :coché
External amplifier : sans importance sauf si vous avez un amplificateur externe.
Vous avez la chance d'avoir plusieurs cartes son (idéal pour mixer comme un dj avec mixxx par exemple), mais problème : la carte principale qui est reconnue et utilisée par Ubuntu n'est pas celle que vous voulez utiliser.
Le problème se pose aussi avec les cartes TV, qui souvent s'identifient comme carte son principale, la vrai carte son passant en 2ème position, donc plus aucun son n'en sort.
Le problème existe aussi pour les ordinateur récents qui proposent une sortie spdif (S/PDIF est une sortie coaxiale numérique qui peut se brancher directement sur un ampli 5.1:-) Pour les sorties numériques avec ALSA voir aussi le lien Configurer une sortie numérique avec ALSA.
Il existe plusieurs solutions, si une ne marche pas, essayez la suivante.
Aller dans Système > Préférences > Son et de choisir la bonne carte.
cat /proc/asound/modules
cette commande retourne une liste qui ressemble à ceci :
0 snd_hda_intel 1 snd_usb_audio
Si vous souhaitez que la carte son reconnu en 1 prenne la place de la carte son reconnu en 0 pour que votre deuxième carte son deviennent la carte son par defaut, éditez votre fichier de configuration
gksudo gedit /etc/modprobe.d/alsa-base.conf
et changez l"ordre des modules son (ils commencent par snd) afin de mettre la carte favorite en premier, il faut changer par exemple :
install sound-slot-0 modprobe snd-card-0 install sound-slot-1 modprobe snd-card-1
en
install sound-slot-1 modprobe snd-card-0 install sound-slot-0 modprobe snd-card-1
Puis à la fin du fichier, commentez toutes les lignes commençant par option, et rajoutez ces 2 lignes (remplacez snd-usb-audio et snd-hda-intel par le nom de vos cartes que cat /proc/asound/modules vous a retourné, en veillant à utiliser des - à la place des _) :
options snd-usb-audio index=0 options snd-hda-intel index=1
Puis redémarrez.
Cette solution fonctionne dans de nombreux cas.
Dans un terminal taper :
asoundconf list
Cette commande sert à lister les cartes son reconnues par la bibliothèque audio ALSA (Advanced Linux Sound Architecture).
Toujours dans le terminal taper ensuite la commande asoundconf set-default-card suivie du nom de la carte son qu'on veut utiliser tel qu'il a précédemment été renvoyé par la commande asoundconf list.
Exemple avec une carte son Soundblaster Audigy 2 qu'on souhaite définir par défaut :
asoundconf set-default-card Audigy2
Au redémarrage, c'est normalement la bonne carte son qui sera systématiquement utilisée par défaut et cela devrait persister lors des futurs redémarrages.
Son en local mais pas sur internet
Si après avoir, comme moi, installé bon nombre de codecs et paquets, modifié des fichiers de config, fait des recherches un peu partout, etc… il s'avère que vous n'avez toujours pas de son sur les videos des sites, une autre solution est possible. Vérifiez en lançant Firefox depuis un terminal que lors de la lecture d'une video, des lignes (assez nombreuses) de messages d'erreur apparaissent. Du style :
Alsa lib conf : Unknow PCM...etc...
- allez dans le bios et désactivez le chipset/son intégré
- regardez dans votre /home, renommez les fichiers .asoundconf et .asoundrc (ou similaires)
- redémarrez votre pc, testez et si ça fonctionne vous pouvez virer les fichiers ci-dessus
Si après toutes vos recherches, tests et réglages votre carte son refuse de fonctionner correctement, il est possible pour une somme modique d'installer dans votre ordinateur une nouvelle carte son 100% compatible GNU/Linux sans aucun réglage
. Vous pouvez trouver des cartes son d'occasion à partir de 6€ dans les bonnes brocantes informatiques.
| Référence carte son | Ordinateur type tour | Ordinateur portable |
|---|---|---|
| carte son Terratec auréon 5.1 PCI | 19 euros environ | - |
| carte son Terratec auréon 5.1 USB MK2 | 49 euros environ | 49 euros environ |
Hélas cela nécessite souvent une petite manipulation…
Méthode avec Audacity (cf. ce post)
* installer audacity
* installer alsa-oss
* installer pavucontrol
* lancer audacity en mode oss (ALT+F2, "aoss audacity", entrer)
* Dans Audacity, allez dans préférences > E/S Audio. Choisir Alsa: Défault pour le périphérique de lecture, comme pour le périphérique d'enregistrement.
* lancer pavucontrol (ALT+F2, "pavucontrol", entrer)
* Allez à l'onglet enregistrement (qui est normalement vide).
* Après ça, lancer audacity.
* Cliquer sur Enregistrer.
* Maintenant dans pavucontrol est apparu audacity. Là, il suffit de choisir de cliquer sur la petite flêche vers le bas (a droite), allez sur déplacez le flux. Et choisir "Monitor of …. (chez moi exemple : Monitor of HDA Intel).
Commencez par vérifier le fonctionnement du microphone : voir enregistrement.
Au moins deux paramètres doivent activés en mode capture: la ligne Mic et la ligne Capture 2)
Cela peut se faire via kmix ou alsamixer (dans un terminal)
Avec alsamixer,
Avec kmix (GUI)
introduire des captures d'écran
Essayez en augmentant le gain du micro: activer le commutateur/switch Mic Boost +20 db (autre label possible mic gain
Depuis la mise à jour de la version 9.04 à la version 9.10 le son fonctionne parfaitement en stéréo mais lorsqu'on le passe en mode 5.1 il fait des "vague" et deviens peu à peu inaudible.
Pas de solution jusqu'à présent
Lorsque vous lisez un fichier sonore et qu'un horrible grésillement s'y ajoute.
Vous possédez une carte son VIA VT8233, vérifiez-le en tapant :
lsmod|grep snd-via82xx
Si la commande ne renvoie rien, n'allez pas plus loin.
Sinon vous pouvez tenter d'ajouter la ligne suivante au fichier /etc/modprobe.d/alsa-base.conf :
options snd-via82xx index=0 dxs_support=3
Redémarrer votre ordinateur
Contributeurs : topazz, Trishika, eat your potato, fnx, feanturiP