Mostrando entradas con la etiqueta audio. Mostrar todas las entradas
Mostrando entradas con la etiqueta audio. Mostrar todas las entradas

sábado, 4 de abril de 2015

Configurar Linux para funcionar en modo Realtime con el sonido

Estoy trasteando con Debian Sid, aunque realmente ya está congelada, y parece que a final de este mes liberarán la version 8, Jessie. Y al utilizar los programas Rakarrack y Guitar Rig 5 (este último mediante wineasio) me dan un poco de latencia, a pesar de que he probado diversas configuraciones con Jack. Esto con Debian 7 Wheezy no me ocurre. Entonces se me ha removido el tema del "realtime", y he buscado porque no recordaba la modificación que había que hacer, según la faq de JACK.

Pues según nos dicen en la faq de "JACK Audio Connection Kit", no es necesario un kernel RT para funcionar en modo realtime, y lo único que hay que hacer es modificar /etc/security/limits.conf para que contenga estas dos líneas:

@realtime   -  rtprio     99
@realtime   -  memlock    unlimited

Después hay que crear el grupo "realtime", y añadir al usuario que va a utilizar el sistema de audio al grupo:

groupadd realtime
usermod -a -G realtime yourUserID

Y nada más.

http://jackaudio.org/faq/linux_rt_config.html 

domingo, 28 de diciembre de 2014

Sonido en Iceweasel y Chrome. Pulseaudio >> Jack

Hace poco desinstalé todos los paquetes de audio de mi Debian Wheezy para hacer limpieza y poder instalar cosas de la distribución de KXStudio sin tener conflictos de dependencias.

Reinstalé todo el software de audio, incluyendo cosas nuevas, y actualizando algunos programas. Todo fue bien, excepto que al reproducir vídeos Flash con Iceweasel, el sonido ya no sonaba a través de la tarjeta USB externa, sino de la integrada en placa que lleva el portátil.

Recuerdo que cuando compré el PC, al instalar el sistema operativo, ya me dio guerra el asunto del sonido de los vídeos con el navegador, pero no recuerdo como lo solucioné aquella vez... Por eso esta vez lo voy a dejar escrito.

En realidad, no lo he solucionado en Wheezy, sino en la Sid que tengo en la otra partición. Porque suelo instalar dos sistemas operativos para no quedarme tirado si uno falla. Tenia una Squeeze en dicha partición, y se me ocurrió actualizar a Sid, para ver que novedades traía, porque hacía ya mucho (desde hace uno o dos PC's) que no trateaba con Sid, más que nada porque me cansé de la inestabilidad.

La cuestión; Tengo una tarjeta USB externa. Utilizo Qjackctl para arrancar Jack, que siempre está en marcha, porque utilizo bastante los programas de sonido. Yo recordaba que el navegador se conectaba a Jack con una salida de Pulseaudio. Estuve investigando el fichero .asoundrc sin éxito, parece que la solución no pasa por él. También estuve mirando el funcionamiento de Pulseaudio y su configuración, pero no conseguí nada. Ya había tirado la toalla, cuando he instalado el programa Cadence que viene con KXStudio. He arrancado Jack y luego Pulseaudio, ambos desde Cadence, por probar... Y de repente el sonido funcionaba a través de la tarjeta USB como yo quería, y Pulseaudio aparecía entre la conexiones del Patchbay.

Entonces, he hecho un ps aux | grep pulse mientras sonaba la música de Dave Brubeck en Youtube por la tarjeta externa, y el resultado ha sido:

navegante 17488  1.7  2.8 209804 112460 ?       S Ll 20:46   0:00 pulseaudio --daemonize --high-priority --realtime --disallow-module-loading --exit-idle-time=-1 --file=/usr/share/cadence/pulse2jack/play+rec.pa -n

Y bueno, es una valiosa información, porque no me aclaraba sobre cómo lanzar Pulseaudio correctamente, y andaba haciendo pruebas, y sobre todo... porque apunta al fichero con la configuración. Que síiiii, que RTFM, pero es que la cosa me quedaba grande.

Como ahora uso XFce4 (desde que Gnome y KDE son infumables), y en su configuración permite lanzar Pulseaudio al arrancar el escritorio, así lo he dejado, tomando nota de la línea obtenida con ps por si las moscas.

Entonces he hecho:

mv /etc/pulse/default.pa /etc/pulse/default.pa.original
cp  /usr/share/cadence/pulse2jack/play+rec.pa /etc/pulse/default.pa

He cerrado Cadence, he matado el proceso pulseaudio, he salido de la sesión y vuelto a entrar, para que XFce4 arranque Pulseaudio y utilice la nueva config, he abierto qjackctl, y pulseaudio aparecía en el Patchbay. Y la música de Youtube ha sonado a traves de la tarjeta USB externa.

Bueno, es una cutre-solución, pero me ha hecho un papelazo, ya que no utilizo Pulseaudio más que para el sonido del navegador, y por eso ha servido cambiar el fichero así "a pelo". Quizás para otros usos de Pulseaudio no sirva, pero, da una pista... Y como luego se me olvida siempre cómo hacer las cosas, y además he visto que hay más gente con el mismo problema del sonido de los vídeos en Mozilla y derivados, pues digo, voy a hacer una entradilla de blog, que hace ya mucho que no hago.


Acabo de probar con Wheezy y también funciona. Por cierto, es preciso tener instalado el paquete pulseaudio-module-jack. El sonido en Chrome también funciona.

Estoy acostumbrado a utilizar Qjackctl, y de momento voy a seguir así. Aunque la verdad es que Cadence me ha salvado el culo con este tema, y parece un programa muy interesante, que voy a ir viendo en lo sucesivo, porque al final igual sí merece la pena cambiar a Cadence. Ya veremos.


La nueva configuración queda así:

#!/usr/bin/pulseaudio -nF
#
# This file is part of PulseAudio, tuned to work for JACK input/output
#
# PulseAudio is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

# This startup script is used only if PulseAudio is started per-user
# (i.e. not in system mode)

.fail

### Automatically restore the volume of streams and devices
load-module module-device-restore
load-module module-stream-restore
load-module module-card-restore

### Load Jack modules
load-module module-jack-sink
load-module module-jack-source

### Load unix protocol
load-module module-native-protocol-unix

### Automatically move streams to the default sink if the sink they are
### connected to dies, similar for sources
load-module module-rescue-streams

### Make sure we always have a sink around, even if it is a null sink.
load-module module-always-sink

### Make Jack default
set-default-sink jack_out
set-default-source jack_in






Un saludo.

lunes, 22 de diciembre de 2008

Convertir .rm a .wav con mplayer

mplayer fichero_entrada.rm -ao pcm:file=fichero_salida.wav -vc dummy -vo null

Visto en http://crashrecovery.org/mp3-ripkit/utils/realaudio-to-mp3.html

sábado, 5 de enero de 2008

Mini guía para compilar MPlayer

El otro día fuí a reproducir con MPlayer un fichero tipo "Ogg data, Theora video", que había generado mediante recordmydesktop, y no pude. Rápidamente me puse manos a la obra para recompilar MPlayer, y consultando por la web di con esta página que explica como hacerlo. No es el descubrimiento de América, pero estas guías siempre son útiles. Lo del formato "theora" se solucionó instalando libtheora-dev antes de compilar MPlayer. ;-)