Aller au contenu

[Gentoo] Gestion du son avec ALSA (Résolu)


lebarjoe

Messages recommandés

Bonjour,

Les modules alsa ne se chargent pas en mémoire lors du boot. Donc je suis obligé à chaque fois de charger les modules manuellement, malgré que le fichier /etc/modules.conf soit bien renseigné (avec modules-update).

Autre remarque, je possède un Shuttle XPC SN41G2V1 (nforce2) et le chipset son serait un "Via" voir plus bas la commande lspci.

#--------------------------------------

# Carte Son intégrée intel8x0 (nforce2)

#--------------------------------------

Etat : Non résolu

Noyau version : gentoo-dev-sources-2.6.7_r8 (Driver intel8x0 compiler en dure et non en module)

Driver version : alsa-lib 1.0.5, alsa-utils 1.0.5

Config noyau:

<*> Sound card support
 Advanced Linux Sound Architecture  --->
  <*> Advanced Linux Sound Architecture
 	<M> Sequencer support
 	< >   Sequencer dummy client
 	<*> OSS Mixer API
 	<M> OSS PCM (digital audio) API
 	[*] OSS Sequencer API
 	< > RTC Timer support
 	[ ] Verbose printk
 	[ ] Debug
 	Generic devices  --->
    <M> Dummy (/dev/null) soundcard
    <M> Virtual MIDI soundcard
    <M> MOTU MidiTimePiece AV multiport MIDI
    <M> UART16550 - MIDI only driver
    <M> Generic MPU-401 UART driver
 	ISA devices  --->
 	PCI devices  --->
     <*> Intel i8x0/MX440, SiS 7012; Ali 5455; NForce Audio; AMD768/8111
 	ALSA USB devices  --->
 	Open Sound System  --->
 < > Open Sound System (DEPRECATED)

Commande lsmod:

Module                  Size  Used by
joydev                  8256  0 
uhci_hcd               29456  0 
ohci1394               31876  0 
ieee1394               94516  1 ohci1394
ohci_hcd               19204  0 
nvidia_agp              6044  1 
agpgart                27944  2 nvidia_agp
evdev                   7680  0 
nvidia               4817300  20

Gentoo root # lspci |grep audio

0000:00:05.0 Multimedia audio controller: nVidia Corporation nForce MultiMedia audio [Via VT82C686B] (rev a2)
0000:00:06.0 Multimedia audio controller: nVidia Corporation nForce2 AC97 Audio Controler (MCP) (rev a1)

Gentoo root # modprobe snd-intel8x0;modprobe snd-pcm-oss;modprobe snd-mixer-oss;modprobe snd-seq-oss
FATAL: Module snd_intel8x0 not found.
FATAL: Module snd_mixer_oss not found.

Après le son fonctionne en lancant la commande ci-dessus.

Gentoo root # lsmod

Module                  Size  Used by
snd_seq_oss            32256  0 
snd_seq_midi_event      6528  1 snd_seq_oss
snd_seq                50192  4 snd_seq_oss,snd_seq_midi_event
snd_seq_device          7048  2 snd_seq_oss,snd_seq
snd_pcm_oss            49960  0 
joydev                  8256  0 
uhci_hcd               29456  0 
ohci1394               31876  0 
ieee1394               94516  1 ohci1394
ohci_hcd               19204  0 
nvidia_agp              6044  1 
agpgart                27944  2 nvidia_agp
evdev                   7680  0 
nvidia               4817300  20 

Gentoo linux # modprobe -l |grep sound

/lib/modules/2.6.7-gentoo-r8/kernel/sound/drivers/snd-virmidi.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/drivers/snd-mtpav.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/drivers/mpu401/snd-mpu401.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/drivers/snd-dummy.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/drivers/snd-serial-u16550.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/core/seq/snd-seq-device.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/core/seq/snd-seq.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/core/seq/snd-seq-midi-event.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/core/seq/snd-seq-virmidi.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/core/seq/snd-seq-midi.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/core/seq/oss/snd-seq-oss.ko
/lib/modules/2.6.7-gentoo-r8/kernel/sound/core/oss/snd-pcm-oss.ko 

Gentoo etc # rc-update -s
              alsasound | boot                   
              aumix | boot                   
             esound |      default           

Contenu du fichier /etc/modules.d/alsa

# ALSA portion
alias char-major-116 snd
alias snd-card-0 snd-intel8x0

# OSS/Free portion
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0

# card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
options snd snd_major=116 snd_cards_limit=1 snd_device_mode=666

alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss

La commande modules-update a pourtant bien fonctionner.

Mais auncuns modules alsa ne se charge en mémoire lors du boot du PC.

Que faut-il faire ? Recompiler le noyau et mettre en modules ? et comment recompiler le noyau, sachant que j'ai installé des modules externes (alsa-lib, nvidia) ?

Solution: ???

Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Alors déjà, je pense que alsa marche, mais l'émulation oss n'est pas activée...

(je dis ça par rapport à "modprobe snd-pcm-oss;modprobe snd-mixer-oss;modprobe snd-seq-oss")

Donc, ce qu'il faut faire, c'ets charger ça au démarrage...

Edite le fichier /etc/modules.autoload.d/kernel-2.6 et rajoute les modules que tu veux charger dedans

ou bien tape ceci:

 $ echo "snd-pcm-oss" >> /etc/modules.autoload.d/kernel-2.6
$ echo "snd-mixer-oss" >> /etc/modules.autoload.d/kernel-2.6
$ echo "snd-seq-oss" >> /etc/modules.autoload.d/kernel-2.6

Cela chargera les modules automatiquement au démarrage...

Mais je précise bien que alsa fonctionnait déjà...

(regarde la sortie de "dmesg", vers la fin, normalement, ils parlent de alsa...)

Lien vers le commentaire
Partager sur d’autres sites

Merci, c'est la solution à laquelle je pensais (car pareil que nvidia), mais je voulais savoir s'il n'y avait un autre moyen plus propre.

Si tu compile en dur les drivers alsa, a-t'on besoin de faire un modules-update sur le fichier /etc/conf.d/alsa ? (normalment non ?)

En fait, j'aimerai bien recompiler mon noyau, mais jai peur de faire des bêtises.

cd /usr/src/linux
make clean
make menuconfig (ajout de modules, suppression de modules)
make
make modules_install
Copie du bzImage dans /boot/kernel-2.6
Copie du System.map dans /boot/System.map-2.6
emerge unmerge alsa-lib
emerge unmerge nvidia-kernel
emerge alsa-lib
emerge nvidia-kernel
reboot

Est-ce bon ?

En tout cas un grand merci pour ton aide précieuse.

Lien vers le commentaire
Partager sur d’autres sites

Il faut toujours laisser le service alsasound au boot...

le fichier /etc/conf.d/alsa ne sert pas, non.

Pour recompiler le noyau, j'ai plusieurs remarques...

1) Le topic noyau, dans ma signature

2) Le topic gentoo, dans ma signature ET épinglé

3) Le manuel gentoo, que tu as lu pour installer et qui explique comment faire

Donc tu fais comme tu veux, mais je te conseille grandement d'utiliser "genkernel --manuconfig all"

(avec le noyau qui va bien, pour l'instant je pencherais pour un 2.6.7-ck5)

:chinois:

Lien vers le commentaire
Partager sur d’autres sites

Bon, bas je vais compiler le noyau 2.6.7-ck5 sans utiliser genkernel (car je l'ai fait manuellement lors de la première install) et mettre ALSA en modules dans un premier temps et puis en dur en dur dans un deuxième temps (afin de voir la différence de performance comme tu le précises).

Il est vrai que le noyau 2.6.7-ck5 ne nargait depuis quelques jours, mais j'osai pas.

D'ailleurs à ce propos, l'auteur de ce noyau indique de désactivé l'option "préempt", bizarre non ?

Merci, tout et à bientôt sur le forum.

Lien vers le commentaire
Partager sur d’autres sites

Ouais, pour le "preempt" personne ne sait vraiment.

Bon, je vois toujours pas pourquoi tu fait à la main, mais bon :D

Pour la vitesse des modules, ça n'a aucun incident quand c'est par rapport au son...

Le plus impressionnant, c'était pour les drivers nvidia... Et pour alsa, c'est pour la détection et pour éviter de charger tous les modules de son...

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...