Journal Le multiplexage software du son qui fonctionne enfin sous linux sans soucis

Posté par  .
Étiquettes :
0
27
nov.
2005
Bonjour à tous,
Pour les heureux possesseurs d'ordinateurs portables ou de cartes son intégré à la carte mère, vous avez déjà été confronté au problème qu'une seule application peut jouer du son. Il était obligatoire de passer par un démon de son comme arts ou esd.

J'avais testé l'année dernière Dmix, un module dans alsa qui permet de faire du multiplexage software du son pour toutes les applications qui utilisent alsa en natif. Cela fonctionnait mal, le son avait tendance à cracher quand différents sons étaient jouées.

Depuis alsa 1.0.10 (intégré dans la debian sid), dmix est activé par défaut pour les cartes son sans multiplexage hardware.
J'ai testé avec une demi douzaine de programmes de son et ça fonctionne très bien.

Attention cela ne fonctionne pas pour les applications oss même avec le module alsa-oss, car ces applications n'utilisent pas la libasound qui intègre dmix. Néanmoins il y a aoss (dans le package alsa-oss dans debian) pour permettre à une application oss d'utiliser alsa.

Après la mise en place d'un support des périphériques amovibles équivalent à celui de windows grâce au trio udev/hal/pmount en combinaison du kio-slave media, on ne peut qu'applaudir cette amélioration qui permet à linux d'être aussi facile à utiliser que windows pour écouter du son auprès des débutants.
  • # Cool

    Posté par  . Évalué à 3.

    J'avoue, c'était une des choses bien emmerdantes encore.

    Ca se passe comment en fait, "l'activation par défaut" auquel tu fais référence ?

    Dans mon cas, j'ai un .asoundrc avec les options qui vont bien.

    Qu'est-ce qui va changer ?
    • [^] # Re: Cool

      Posté par  (site web personnel) . Évalué à 6.

      Concrètement, tu peux supprimer ton .asoundrc (ou dans un premier temps le renommer ;-), et constater que dmix marche "out of the box".
  • # hum oui pas mal :)

    Posté par  (site web personnel) . Évalué à 3.

    Je viens de recuperer le packet depuis la branche unstable et ca a réglé le probleme que j'avais avec alsa (son hachuré...) mais en plus j'ai pu virer mon fichier .asoundrc et ca semble marcher niquel :).
  • # Évidemment !

    Posté par  (site web personnel, Mastodon) . Évalué à 2.

    Juste le jour où je prend la peine d'expliquer tout ce foutoir en détail sur mon blog, en disant que c'est compliqué, voilà qu'on m'annonce que, finalement, c'est simple !

    Wééé...

    Je suis toujours une guerre en retard moi.

    Mais sinon, c'est vraiment une excellentissime nouvelle :-D

    Mes livres CC By-SA : https://ploum.net/livres.html

    • [^] # Re: Évidemment !

      Posté par  . Évalué à -2.

      Ca fait chier tes rappels détournés vers ton blog à chaque journal
      • [^] # Re: Évidemment !

        Posté par  (site web personnel, Mastodon) . Évalué à -2.

        Tu sais, avec l'expérience, j'ai appris que beaucoup de commentaires sur linuxfr sont des bêtises.

        Je ne les lis même plus !

        Alors, si en plus ils sont de moi.... Tu crois vraiment que je suis capable d'écrire ce que je raconte ?


        (ce commentaire est sans doute aussi un rappel détourné vers mon blog. Très détourné, mais détourné quand même !)

        Mes livres CC By-SA : https://ploum.net/livres.html

  • # Simplification?

    Posté par  . Évalué à 2.

    Ca veut dire qu'on va pouvoir virer esd, arts?
    Enfin j'ai envie de dire, surtout quand on a une carte son qui fait du multiplexage hardware!
    • [^] # Re: Simplification?

      Posté par  . Évalué à 2.

      ouaip.
      Enfin pour ceux qui ont justement une carte qui ne fait PAS le multiplexage hardware.

      Les autres, ils se passent deja d'un demon sonore.
      • [^] # Re: Simplification?

        Posté par  . Évalué à 3.

        Tres bien, si ça simplifie la chose. Personnellement, je trouve que la configuration des cartes sons sous linux est beaucoup plus compliquée que par exemple la config de Xorg. Moi je n'ai toujours pas configuré le mixage hardware de ma carte son embarqué (carte mere A7N8X deluxe), et je n'ai pas compris a quoi servait aRts.
        Enfin bon, j'ai du son dans xmms, dans xine, dans le jeu Lost Labyrinth, c'est tout ce que je demande, pour l'instant. J'accumule la doc et je vais configurer tout ça un de ces quatre (sous slackware 10.2).
        • [^] # Re: Simplification?

          Posté par  . Évalué à 3.

          et je n'ai pas compris a quoi servait aRts.
          Ben c'est pas complique, une bonne partie du matos audio n'es pas capable de gerer plusieurs sources audios en meme temps (genre xmms et les evenements sonores de ton bureau).
          Un seul processus a la fois peut avoir acces a la carte son.
          Assez genant tout de meme.

          Le role d'arts, esd et tous leurs potos c'est de se mettre entre les processus voulant acceder a la carte son et la carte son elle meme.
          Ils peuvent alors mixer les differentes sources sonores et refaire sortir le tout ensemble.
          Ainsi xmms et les autres ne parlent pas directement a la carte son, mais au demon sonore qui retransmet derriere a la carte son.

          Avec dmix, finit tout ca, tout le monde peut parler directement a la carte son et plus la peine de se trainer ce boulet de demon sonore qu'il faut choisir, configurer, relancer quand il plante etc.
          • [^] # Re: Simplification?

            Posté par  . Évalué à 2.

            ok merci du petit resumé, c'est plus clair maintenant. Je vais faire l'essai chez moi pour voir si je suis bien capable d'avoir 2 sons en meme temps.
    • [^] # Re: Simplification?

      Posté par  (site web personnel) . Évalué à 5.

      Ca tombe bien, si je me souviens bien arts devait justement être supprimé de KDE4.
      • [^] # Re: Simplification?

        Posté par  . Évalué à 2.

        Oui, mais KDE4 est sensé fonctionné sur autre chose que sur Linux !

        Mais de toute façon, d'autres bibliothèques doivent le faire (GStreamer ?) qui pourront servir comme back-end au futur démon son de KDE4.
  • # Noyaux 2.6.14.x

    Posté par  (site web personnel) . Évalué à 2.

    Apparemment c'est ALSA 1.0.10rc1 qui est intégré...
    Même le noyau 2.6.15rc2 ne fournit "que" la version 1.0.10rc3

    Quelq'un a testé dmix avec ?
  • # C'est pas gagné

    Posté par  . Évalué à 2.

    C'est quelque chose que j'attendais depuis un certain temps, notamment pour utiliser timidity sans passer par jackd.
    Je viens de tester avec un noyau 2.6.12 de la sarge : ça marche très bien.
    MAIS (car il y a un mais), si timidity est lancé en tant que service, ça coince. En effet, j'ai l'impression que root étant alors propriétaire du processus qui attaque dmix, les autres process user (genre xmms) ne peuvent plus s'y raccrocher. Le pb disparait si timidity est lancé via mon user.
  • # c'est facile, en effet...

    Posté par  . Évalué à 1.


    Après la mise en place d'un support des périphériques amovibles équivalent à celui de windows grâce au trio udev/hal/pmount en combinaison du kio-slave media, on ne peut qu'applaudir cette amélioration qui permet à linux d'être aussi facile à utiliser que windows pour écouter du son auprès des débutants.


    si tu arrives a expliquer a un débutant windows tout ca , bravo...
    "demon", "arts", "esd", "dmix", "module", "alsa", "multiplexage", "natif", "hardware", "oss" ... etc... ce n'est pas du vocabulaire de débutant pour moi.

    "Aussi facile a utiliser" peut être, mais a installer, cela n'a pas l'air d'être le cas.
    • [^] # Re: c'est facile, en effet...

      Posté par  . Évalué à 1.

      justement, c'est que maintenant (enfin pour les futures distribs) c'est qu'il n'y aura plus rien n'a installer :-) tout est intégré à alsa maintenant.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.