lunes, 7 de mayo de 2012

Herramientas para Stream Server - Alsa y Alsaequal

Ahora vamos a seguir con la instalación de nuestro stream server o servidor de radio por internet.

El Advanced Linux Sound Architecture (ALSA) es uno de los encargados del sistema de audio a los sistemas operativos GNU/Linux, hay otros como pulseaudio, pero el que nos es mas util para nuestros propositos es este.

Una de las ventajas que tiene es que trabaja bien con MPD y con IDJC e Icecast2, ademas existe una herramienta  que se llama alsaequal provista por Digital Machine, que nos permite en pocos pasos ecualizar todo lo que se reproduzca a travez de alsa.

Para un sistema de escritorio esta super genial porque tenemos un ecualizador que sirve desde cualquier reproductor de musica asi como para videos en la web o en cualquier reproductor de video.

Bueno primero por lo primero, así que vamos a hacer la instalación de alsa, en nuestra TTY, nos cambiamos a root, y escribimos:
# apt-get install alsa-base alsa-oss alsa-source alsa-utils linux-sound-base oss-compat xapm apmd





Una vez hecho esto, vamos a instalar las dependencias que harán funcionar nuestro ecualizador, instalamos:
# apt-get install caps libasound2-dev libasound2-plugins libasound2-plugin-equal


Y despues descargamos el paquete alsaequal de la pagina de Digital Machine, con wget:
# wget http://www.thedigitalmachine.net/tools/alsaequal-0.6.tar.bz2

Despues lo descomprimimos:
# tar -xvvf alsaequal-0.6.tar.bz2

Y nos cambiamos al directorio recien creado:

# cd alsaequal

Una vez ahí limpiamos el caché de make:
# make clean

Y compilamos:

# make
# make install

Y volvemos a limpiar el caché, ahora vamos a salir de root y regresar a nuestro usuario común y creamos en nuestra carpeta de /home/mi_usuario el siguiente archivo:
$ touch .asoundrc


Y lo abrimos con nano


$ nano .asoundrc


Y escribimos lo siguiente:
ctl.equal {
      type equal;
    }

    pcm.plugequal {
      type equal;
      # Modify the line below if you don't
      # want to use sound card 0.
      slave.pcm "plug:dmix";
    }

    # pcm.equal {
      # Or if you want the equalizer to be your
      # default soundcard uncomment the following
      # line and comment the above line.
    pcm.!default {
      type plug;
      slave.pcm plugequal;
    }
Una vez hecho esto, regresamos a root y reconfiguramos alsa:

# alsa force-reload

Y listo!!!

Aqui ya podemos controlar el volumen con 

$ alsamixer

Y para entrar al ecualizador escribimos:

$ alsamixer -D equal


Ó dentro de alsamixer :



presionamos F6 y nos aparece una ventana para seleccionar la tarjeta de Sonido, vamos a donde dice enter device name y le damos enter



en la siguiente ventana escribimos equal y damos enter



 y nos hace el cambio al ecualizador. 




 Y eso seria todo por el momento, en el siguiente post veremos la instalación de MPD.


Saludos!




sábado, 5 de mayo de 2012

Actualización del Sistema desde TTY

Despues de hacer la Instalación Minima de Debian Squeeze, necesitamos actualizar nuestro sistema.

Debian al igual que la mayoria de las distribuciones GNU/Linux manejan "paquetes", que son los programas precompilados en formato .deb para poder instalar o actualizar nuestro equipo.

Los servidores en donde se almacenan estos paquetes se llaman "Repositorios", y los hay por todo el mundo, simplemente cuando hacemos la instalacion de Debian nos pide que escojamos el mas cercano a nosotros por razones de velocidad.

De vez en cuando para instalar algun programa o dependencia, se nos pide agregar un repositorio, como en el caso de varios codecs de video y audio que Debian por su politica de "Software 100% Libre" no añade directamente en sus repositorios oficiales, pero no esta en contra de que se instalen en el.

Algo similar ocurre con los repositorios oficiales, ya que podemos agregar al final de la sentencia las palabras contrib (paquetes hechos por la comunidad) y non-free (paquetes no libres o con licencia distinta a GPL).

Una nota importante, nuestro usuario común no tiene la posibilidad de instalar, reinstalar, desinstalar, modificar, crear  o borrar archivos o programas en algunas carpetas, esta resposabilidad es solamente del usuario administrador o mejor conocido como root.

Cuando entramos al sistema con nuestro usuario común, en la linea de comando nos pone algo asi:

avanti@debiansvr:~$

Que es el nombre del usuario, la arroba se usa como la preposicion en, el nombre del equipo y los dos puntos nos dice la ubicacion dentro del arbol de archivos, en este caso la tilde ~ significa nuestra carpeta personal dentro del home ó /home/nuestro_usuario, y el signo de moneda $ nos indica que estamos como usuario normal.

Podemos cambiar a usuario administrador o root con el comando su, este nos pedira la contraseña de root y podremos instalar, reinstalar, etc...

Y como dijo Ben Parker, " todo gran poder lleva una gran responsabilidad", asi que usese con precaucion.

Y entonces podemos ver como cambia a:

root@debiansvr:/home/avanti#

Que es: usuario root en nombre_del_equipo en la ubicacion /home/avanti y al final el signo de numero # que indica que el usuario es administrador.

Todo esto es para que cuando se vea una linea que empieza con $ significa que se hace desde el usuario común y cuando se inicia la sentencia con # se indica que se ejecuta como root.

En los dos casos, los dos simbolos $ y # no se deben agregar a la sentencia solo indican con que usuario se ejecutan.

Entonces visto esto, procedemos a cambiar nuestro archivo de configuracion que es /etc/apt/sources.list.

(Nota: Para la instalación del Stream Server pasa a Actualización de Version)

Nos cambiamos a root:

$ su

Y abrimos el archivo de configuración:

# nano /etc/apt/sources.list


Hasta aqui lo tenemos en la rama Estable o Squeeze,  y lo que hacemos es agregar al final de los repositorios oficiales contrib non-free y de los repositorios de seguridad solo contrib y al principio de los repositorios squeeze-updates (anteriormente volatile) el signo de # para comentarlos. Y los dejamos asi:




Para guardar con ctrl+o y para cerrar con ctrl+x.

Y actualizamos la lista de paquetes, ahora va a leer los que le agregamos:

# apt-get update

Y despues actualizamos:

# apt-get upgrade


En algun momento la actualización se detendra para indicar algunos cambios, solo presionamos la tecla q para que continue

y nos dira que necesita detener algunos servicios para actualizar, le decimos que no y despues aceptar, esto para ver que se va a detener:




Actualización de Versión

Para la instalación del servidor de Streaming, nos vamos a cambiar a la rama Testing o Wheezy, y vamos a agregar los repositorios multimedia

Vamos a editar nuevamente el sources.list como root:

# nano /etc/apt/sources.list


Y vamos a cambiar donde dice squeeze por wheezy, y vamos a agregar al final de los repositorios oficiales contrib non-free y de los repositorios de seguridad solo contrib y al principio de los repositorios squeeze-updates (anteriormente volatile) el signo de # para comentarlos.

Ademas vamos a agregar dos lineas mas para la instalación de los repositorios multimedia:


Despues actualizamos, y nos marcara un error de falta de una llave, la agregamos, como root:

# aptitude install debian-multimedia-keyring

Y volvemos a actualizar:

# apt-get update

Y se actualizara correctamente la lista de repositorios, ahora actualizaremos el sistema:

# apt-get upgrade

e igual que en el anterior, si nos muestra una lista de cambios solo damos q y si nos pregunta que tiene que detener algunos servicios, le damos no y en la siguiente ventana aceptar.

Una vez terminado, veremos que posiblemente hubo una actualización de versión del Kernel:


Seleccionamos la primera y al entrar nos damos cuenta que cambiamos de rama a Wheezy/Sid antes de poner el usuario y la contraseña.


Bueno con esto ya tenemos a punto el equipo para seguir con la instalación.

Saludos!

Aviso importante!

Debido a que apenas estoy resolviendo que rumbo tomara este blog, hay dos grandes inquietudes, primero hacer un manual completo de un Stream Server o Servidor de Radio por Internet (uno con MPD y otro con Icecast e IDJC), asi como instalar entornos livianos para equipos con poco recursos o que como yo no les guste "hacerlo de la manera facil" o por el simple gusto de hacerlo.

Así que la base esta puesta, con el artículo anterior de la Instalación Mínima en Debian Squeeze podemos tomar el rumbo que queramos, algunas herramientas pueden ser usadas por las dos "ramas" (Server y Desktop) pero primero me voy a enfocar en el lado de los servidores.

Asi que los siguientes articulos se van a catalogar en dos:

Herramientas para Stream Server

y

Entornos de Escritorio Ligero


Saludos!