Audio en Debian sin tener que desactivar ESD

Hola, hace algunos meses que he venido utilizando Debian, y me guié tanto preguntando como viendo los post que se hacen en esta página.

Y en aquella ocasión resolví el problema del audio haciéndolo como dice en este hilo, el cual sugiere deshabilitar ESD (Escritorio->Preferencias->Sonido->Activar mezcla de sonidos por software) para poder reproducir sonidos mp3 en el ordenador.

Y de hecho así ocurre, si tienes habilitado ESD no puedes reproducir música, si lo deshabilitas si se reproduce. La pregunta es ¿alguien puede reproducir canciones sin desactivar ESD? ¿como lo hizo?

Gracias

ESD no tiene nada que ver con la reproducción de mp3.

Hace ya unos años que el servidor de sonido OSS quedó obsoleto y se empezó a usar ALSA. En un principio ninguno de los dos permitía la mezcla de audio por hardware, es decir, que cuando una aplicación se adueñaba del dispositivo de sonido (/dev/snd) ninguna otra aplicación podía usarlo. Para eso se crearon varios demonios (entre ellos esd y arts). Su función es realizar la mezla de sonido por software. Se adueñan del dispositivo de sonido y cuando una aplicación quiere usarlo lo que hace es que se lo manda a esd y este se encarga de mezclar todos los flujos de audio y servirselo ya mezclado al dispositivo de sonido. Pero para ello tienes que configurar la aplicación para que use como plugin de salida esd. Por ejemplo en la seccíon Preferencias->audio de gmplayer puedes configurar el plugin de salida que quieras. Así que probablemente tu problema venga de ahí.

Pero los avances de ALSA han permitido que la mezcla de audio se pueda hacer por hardware, de ahí que los demonios esd y arts estén ya en desuso y la mayoría de las aplicaciones usan ALSA por omisión. Gnome sigue usando esd para la reproducción de los sonidos de eventos, aunque no sabría decirte la razón.

Otro problema puede ser que no tengas instalado el paquete libesd-alsa0, que permite el uso de ESD con ALSA.

Así que para empezar comprobaría que tuvieras instalado el paquete libesd-alsa0 y no el paquete libesd0 ( son imcompatibles así que no te asutes cuando al instalar uno te pida eliminar el otro), además de eso configuraría el resto de aplicaciones para que usen ALSA ya que la mezcla por hardware es mejor que la mezcla por software.

longo escribió:

Otro problema puede ser que no tengas instalado el paquete libesd-alsa0, que permite el uso de ESD con ALSA.

Así que para empezar comprobaría que tuvieras instalado el paquete libesd-alsa0 y no el paquete libesd0 ( son imcompatibles así que no te asutes cuando al instalar uno te pida eliminar el otro), además de eso configuraría el resto de aplicaciones para que usen ALSA ya que la mezcla por hardware es mejor que la mezcla por software.

Longo, acabas de darme la solución a otro problema, expuesto en este hilo.
Para no repetirme pondré lo que hice en ese hilo.

Gracias por tu ayuda bigsmile

skarfester escribió:
longo escribió:

Otro problema puede ser que no tengas instalado el paquete libesd-alsa0, que permite el uso de ESD con ALSA.

Así que para empezar comprobaría que tuvieras instalado el paquete libesd-alsa0 y no el paquete libesd0 ( son imcompatibles así que no te asutes cuando al instalar uno te pida eliminar el otro), además de eso configuraría el resto de aplicaciones para que usen ALSA ya que la mezcla por hardware es mejor que la mezcla por software.

Longo, acabas de darme la solución a otro problema, expuesto en este hilo.
Para no repetirme pondré lo que hice en ese hilo.

Gracias por tu ayuda bigsmile

Este en un problema muy común. A mi ya me pasó en mi día y lo resolví rebuscando por el gestor de paquetes hasta que encontré ese dichoso paquete. En mi opinión, desde que el núcelo incluye ALSA como módulo interno, cualquier versión de debian que utilice un núcleo con estas características tendría automáticamente que instalar la biblioteca de ESD compatible con ALSA y suprimir la de OSS, lo cual no se hace. Mi primera y única instalción (después de unas cuantas de prueba XD) la hice con sarge( que en esa época era la rama testing) y en ningún momento, ni siquiera cuando hice el upgrade a SID ( que por esa época era el padre de etch), se me sugirió realizar ese cambio. Pienso que es algo que se tendría que tener en cuenta dentro de la planificación interna de las distintas ramas de Debian.

Y para los que tengamos una porquería de tarjeta de sonido integrada no nos queda más remedio que mezcla por software, con alsa podemos recurrir al truquito del ~/.asoundrc

pcm.duplex {
  type asym
  playback.pcm "dmix"
  capture.pcm "dsnoop"
}

pcm.!default {
  type plug
  slave.pcm "duplex"
}

Luego si queremos que todas nuestras aplicaciones en gnome anden bien, como dice el amigo tenemos que tener libesd-alsa0 y alsa-oss para los programas viejos que solo usan OSS (que los hay y muy útiles) con eso sería suficiente

Saludos...

ah, gracias. ha quedado solucionado.

hice simplemente como sugirió longo. tan sólo instalé las librerías libesd-alsa0

# apt-get install libesd-alsa0

y con eso se solucionó el problema.

Gracias por su ayuda
bigsmile