Hoy en día la radio se apoya de la Internet para para transmitir información denominada como Radio por Internet. Y este Manual elaborado en Bolivia, es uno de tantos ejemplos.
1. REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LA EDUCACIÓN
DIRECCIÓN GENERAL DE LA OFICINA DE ADMINISTRACIÓN Y SERVICIOS
DIRECCIÓN DE INFORMÁTICA Y SISTEMAS
DIVISIÓN DE FORMACIÓN AL USUARIO
MANUALMANUAL PARA LA CREACIÓN DE UNA RADIO WEBPARA LA CREACIÓN DE UNA RADIO WEB
AUTOR:
* RADIO ÑU: “que_es_radiognu”.
Contribuyentes de wiki.radiognu.org.
Editor: Wiki de RadioÑú.
* Revisado y adaptado para el MPPE por
la Dirección de Informática y Sistemas.
* 08 de mayo de 2013
Página: 1
2. TEMA 1: ¿Qué es una radio WEB?
La radio WEB, consiste en la exhibición de contenidos auditivos con las
características propias del medio radiofónico (tales como su guión y lenguaje) a
través de Internet. Debido a que la señal de radio es transmitida por Internet
mediante el World Wide Web , es posible acceder a estaciones de cualquier parte
del mundo; por ejemplo, escuchar una estación australiana desde Europa o
América. Esto lo vuelve un servicio atractivo y popular para la gente que tiene
interés de escuchar cadenas radiofónicas específicas de cualquier lugar del
planeta. Tomado de: Wikipedia, la enciclopedia libre:
https://es.wikipedia.org/wiki/Radio_por_Internet
EMA 2: ¿Qué se necesita para crear una radio WEB?
Existen varias maneras para crear una radio WEB, la más sencilla es con una
computadora con GNU/Linux y un micrófono. Sin embargo, la que nos ocupa en
este manual, es crearla con el ambiente ideal que se especifica con la siguiente
configuración:
• Un micrófono dinámico de buena calidad (recomendado SHURE SM58 o
similar). Los micrófonos de condensador, si se tiene un buen presupuesto,
pueden ser buenos también. Marcas recomendadas: Røde, M-Audio,
Senheizer, AKG y SHURE.
Se puede utilizar más de un micrófono, para ello es necesario un mezclador
o preferiblemente una tarjeta de audio con cónsola. No es recomendable
que la cónsola tenga efectos, eso aumenta su precio y los efectos que trae
no son útiles para la radio:
• Un limiter/gate/compressor. Cualquier compuerta (GATE) hace el trabajo,
que sumada al compresor y al limitador, dará a la señal proveniente del
micrófono, un manejo para que no hayan picos producidos por alto volumen
y muy importante, se eliminarán los sonidos que sean de baja señal,
eliminado en gran parte lo que no sea la voz directa en la membrana del
Página: 2
Cósola
MultiMix 4 USB Four-Channel
USB Mixer
3. micrófono. Con esto, cuando una persona habla se le escucha siempre al
mismo volumen y si alguien que no está frente al micrófono hace un ruido o
dice algo no se escuchará (incluyendo ruidos ambientales), dejando
exclusivamente la voz del locutor la que sea procesada. Esto aún no es
suficiente para quitar el ruido. Restará eliminar el “hiss” (ruido agudo) que
se genera a nivel de los componentes analógicos externos e internos
(tarjetas de audio, procesadores de efectos, mezcladores, convertidores
D/A, fuentes de otros equipos por vía analógica) será necesario limitarlo
desde el IDJC posteriormente.
• Un computador con GNU/Linux con tarjeta de sonido.
TEMA 3: ¿Cómo funciona la radio Radio WEB Escolar?
Nuestra radio está coordinada por la Dirección de Recursos para el Aprendizaje y
participan escuelas y liceos de los 24 estados del país. La estructura es la
siguiente:
Página: 3
Servidor MPPE
Control Maestro del
MPPE
Estudios en escuelas
y liceos de los 24
estados
4. Control Maestro del MPPE: Está ubicado en la Dirección de Recursos para el
Aprendizaje, que es la encargada de gestionar y acompañar los procesos de
elaboración de contenidos en las escuelas y liceos para ser transmitidos por la
radio. Asimismo, administrará la plataforma WEB que reposa en los servidores del
MPPE.
Este espacio está conformado por:
• Cabina de transmisión: Es la oficina donde se ubica el locutor y el
operador y utilizan los siguientes equipos: 1 computador, entre 1 y 4
micrófonos, 1 compresor y limitador para micrófonos y 2 micrófonos
condensadores.
• Sala de producción, edición y montaje: En ella se ubica la mayor parte
del colectivo que produce la radio, acá se realiza la administración de la
radio, la preproducción y la postproducción de los programas.
Estudios en escuelas y liceos de los 24 estados: Inicialmente estos espacios
están ubicados en los Centros Bolivarianos de Informática y Telemática (CBIT).
Cualquier escuela o liceo puede acudir a ellos para producir los programas que se
transmiten por la Radio WEB Escolar. Tecnológicamente están dotados con los
siguientes equipos: 1 computador, 1 cónsola amplificada y 1 micrófono.
Asimismo, están conectados con servicio de Internet.
TEMA 4: ¿Cómo son los procesos de la Radio WEB?
En primer lugar, veamos cómo es el sistema de flujo de datos (streaming) de
audio por internet:
En el recuadro amarillo se presenta lo que sucede localmente en la Coordinación
General de la Radio WEB Escolar de la Dirección de Recursos para el Aprendizaje,
Página: 4
5. para producir el audio que las personas escucharán, lo cual se describe a
continuación:
JACK: Es un servicio donde se conectarán todos los programas de audio. El JACK
gestionará las conexiones internas de entrada y salida. Para trabajar
cómodamente se recomienda usar el QJACKCTL, aplicación gráfica para controlar
el JACK.
Nota: En las configuraciones por defecto, el uso de JACK inhibe el sonido de otros
servidores de audio, como PulseAudio. Al levantar jackd es muy probable que se
dejen de escuchar otras fuentes no conectadas a JACK.
JackRack: (opcional) Sirve para aplicar efectos a cualquier salida de audio que
configuremos en las conexiones del QJACLCTL.
IDCJ: Esta es la aplicación que se sugiere principalmente para manejar la radio.
Tiene muchas posibilidades que no nombramos en este material, por lo cual se
propone al lector que sólo haga uso de las partes básicas del IDJC y luego,
paulatinamente, conocer sus distintas secciones, pues inicialmente su
configuración por defecto funciona bastante bien.
En ese programa se trabaja con micrófonos y archivos de audio. Esas son las
fuentes del audio que se transmite:
• Micrófono (o grupo de micrófonos si hay más de un locutor o se transmiten
mezclas de música en vivo), tomas auxiliares (celulares, reproductores de
música, etc.)
• Archivos: audio producido por archivos que tiene un locutor transmitiendo
en vivo.
• Cortinas: audio en bajo volumen para usarse junto con la voz.
Aunque el micrófono está conectado a JACK directamente, es IDJC quien lo
controlará.
Pasemos ahora a describir el recuadro azul de la imagen anterior. Este representa
el cómo se transforma la señal de radio para ser compartida por la Internet:
ICECAST: El IDJC convertirá toda la salida en un Flujo de Datos (streaming)
que será enviado por Internet y será al final lo que suena en la radio durante una
transmisión en vivo. Eso llega a un servidor de streaming de audio en este
caso ICECAST, donde es llevado el flujo de datos para poder ser recibido por los
oyentes de la radio. Cada fuente de audio, es decir, cada uno de quienes
transmiten el audio, se llaman en el ICECAST “Puntos de Montaje” o en inglés
“moutpoint” y regularmente se escriben así: /punto1 /punto2.ogg /cualquierotro
/etcetera.tal
Es importante notar que los oyentes no se conectan a quien está transmitiendo
directamente. Quien transmite en vivo se conecta al servidor y éste redistribuye
Página: 5
6. la conexión para todos los clientes. De esa manera quien transmite sólo necesita
el ancho de banda necesario para hacer llegar una vez su flujo de datos. El
servidor será quien tenga a cargo el manejo del ancho de banda total. En la
sección correspondiente al ICECAST se especifica esto en detalle.
LicuidSoap: Junto al ICECAST, se usará una herramienta que es un lenguaje de
programación basado en Python llamada LicuidSoap, la cual se usará para
administrar los distintos puntos de montaje (fuentes de flujos de datos) para
administrar todo lo referente a los datos, metadatos y audio de las distintas
conexiones y su presentación y disposición para el público.
Finalmente, los oyentes usarán su reproductor libre favorito para escuchar la
radio. Se recomienda el uso del reproductor VLC.
TEMA 5: Requerimientos para transmitir por una Radio WEB
bajo software libre
Los marcados con (*) son totalmente necesarios. Los demás, opcionales.
SOFTWARE:
• (*) Sistema Operativo GNU/Linux.
• (*)Tener corriendo JACKD, se recomienda el uso de qjackctl
• (*)IDJC. Este programa a veces es mejor compilarlo, pues algunos binarios
empaquetados han presentado deficiencias u omisiones.
• Opcionalmente se sugiere tener un Kernel RealTime. No es obligatorio.
HARDWARE:
• (*)Un computador
• (*)Un Micrófono. Opcionalmente, este puede ser de condensador,
alimentado con Phantom Power.
• (*)Audífionos (cualquiera)
• Un mezclador de al menos 2 canales o una cónsola de mayor capacidad
• Si se usa un micrófono dinámico o de condensador y se quiere un control
mejor del sonido: un preamplificador de estudio.
• Fuente de música (DVD, CD, MP3, etc) que se conecta junto al micrófono del
mezclador, para hacer la cortina mientras el locutor habla.
• Si se desea procesar la voz, un multiefectos externo. Igual puede servir una
máquina con GNU/Linux y FreqTweak o JackRack.
• Para que el audio quede muy limpio y de buen sonido: un
gate/limiter/expander/compressor. Se puede hacer por Software, mediante
los efectos de LADSPA o los de LV2.
Página: 6
7. TEMA 6: CONFIGURACIÓN DEL IDJC
Primeros pasos
Uso del Internet DJ Console que es una herramienta poderosa, flexible y dinámica
que permite crear programación radial vía Internet. A continuación se describe la
pantalla inicial:
Observe que aparecen dos listas de temas (Playlist 1 y Playlist 2), las cuales se
pueden utilizar simultáneamente.
Página: 7
8. Cada lista de temas tiene varios botones para el control de la reproducción:
A continuación se describe el conjunto de botones de reproducción. En el orden en
que aparecen de izquierda a derecha:
• Canción anterior: Reproduce la canción anterior a la que está
seleccionada.
• Reproducir: Reproduce la canción que está seleccionada.
• Pausar: Detiene temporalmente la canción que se está reproduciendo.
• Detener: Detiene completamente la canción que se está reproduciendo.
• Canción siguiente: Reproduce la canción siguiente a la que está
seleccionada.
• Añadir archivos: Muestra un cuadro de diálogo que te permite agregar
canciones sueltas.
• Tiempo reproducido / Tiempo restante: Permite intercambiar entre los
dos modos.
• Barra de avance de la reproducción: Muestra el avance de la canción.
Se puede arrastrar esta barra para avanzar o retroceder a gusto.
Otra barra de botones importante es la del Supervisor de mezclas (Monitor Mix),
la cual permite cambiar entre los modos de mezcla para quien transmite:
• Stream es el audio en tiempo real de lo que se transmite.
• DJ es otro canal de audio, que permite poder escuchar otra cosa mientras
se transmite por el stream.
• El Metadata Source define desde donde se obtiene la metadata para la
transmisión, del reproductor derecha, del reproductor izquierdo, del
Crossfader, o simplemente no utilizar metadatos.
• El Crossfader permite pasar el control de una Lista de temas a otra, de
varias maneras: Los botones L y R pasan de inmediato, sin transición. La
Página: 8
9. barra del crossfader permite hacerlo manualmente.
• Los botones Middle colocan la barra justo al medio, el primer botón con la
metadata de la lista de la izquierda y el segundo con la metadata de la lista
de la derecha.
• El control Response permite controlar de qué manera es el crossfade, si
cruzado o excluyente.
• El Time permite ingresar un tiempo de crossfade, que se cuenta en
segundos.
• Por último, el botón Pass realiza la transición automática con los valores
antes definidos.
Los indicadores de volumen de las listas de temas
Estos indicadores señalan gráficamente el estado del volumen de la reproducción
actual en las listas de temas.
Indicador de Streaming (Str Peak)
Este indicador gráfico señala el estado de salud de la conexión entre
el IDJC y el servidor Icecast. Cuando la barra esta de color verde
completo, es porque está todo bien. Una barra de color rojo que va
creciendo indica que el buffer de entrega de datos se está llenando,
lo que indica una conexión a Internet defectuosa, exceso de tráfico o
pérdida de la señal (en el caso de las conexiones inalámbricas).
Cuando la barra está de color rojo y parpadea, indica pérdida de
paquetes, debido a que el buffer de entrega se ha llenado. Ver
Indicador de Audiencia (Streaming)
Este indicador señala la cantidad de oyentes conectados en los
últimos 30 segundos a la totalidad de los puntos de montaje en lo
que se está transmitiendo.
Página: 9
10. Indicador del volumen de los Micrófonos
Este indicador gráfico entrega el estado del volumen de los
micrófonos que se estén utilizando.
Botones finales que permiten acceder a otras opciones del IDJC.
• Prefs contiene las preferencias en general.
• Output contiene la información de conexión de los puntos de montaje
Icecast.
• Jingles almacena los archivos que son usados para cuando no se está
reproduciendo nada.
Configuración apropiada de GNU/Linux
Se sugiere utilizar el programa IDJC para hacer las transmisiones en vivo. Aunque
con otros programas se puede lograr el mismo resultado.
Esta aplicación trae binarios para las distintas distribuciones que es posible
instalar desde el administrador de paquetes que se use.
En el caso de utilizar Trisuel GNU/Linux (distribución recomendada para
RadioGNU) se resuelve de la siguiente manera:
sudo aptitude install jackd qjackctl idjc
Sin embargo, es posible querer instalar desde las fuentes este programa, por lo
cual será necesario seguir los pasos que se describen en la próxima sección.
Construyendo IDJC desde las fuentes (opcional)
Es recomendable compilar el IDJC desde las fuentes. Esto asegura soportes libres
para todos los formatos de audio.
Página: 10
11. Estas instrucciones de compilación son para hacerlo en Trisquel GNU/Linux, pues
no contiene partes que irrespeten las libertades de los usuarios.
• Primero se instala JACK y las herramientas necesarias para compilar el IDJC.
El nombre de los siguientes paquetes se corresponde con los que se
necesitarán intalar en Trisquel 5.5 (Brigantia) en otras versiones o
distribuciones libres puede haber diferencias con esta lista:
aptitude install install build-essential libjack-dev libvorbis-dev libogg-dev
libsamplerate0-dev libmad0-dev libsndfile1-dev
libglib2.0-dev zlib1g-dev libavcodec-dev libavutil-dev libavformat-dev
python-gtk2-dev python-mutagen checkinstall
• El proceso de instalación preguntará si desea dar prioridad de Tiempo Real
(RT) a jackd. Se aconseja responder SI, con lo cual se tendrá un sistema de
baja latencia de audio.
Nota: si su computadora tiene un puerto firewire y su tarjeta de sonido es externa
y conectada a ese puerto, deberá incluir en el aptitude el paquete “jackd-firewire”
Compilación del IDJC.
1.- Descargar el paquete desde la página oficial del proyecto:
http://sourceforge.net/projects/idjc/
2.- Descomprimir y compilar las fuentes. En este caso se usa la versión 0.8.4 del
IDJC. Hay que ajustar las instrucciones para el caso de versiones superiores:
tar xzf idjc-0.8.7.tar.gz
cd idjc-0.8.7
./configure
make
sudo checkinstall
3.- Usando “checkinstall” en vez de “make install”, instalar el paquete y generar
un .deb que no debe ser usado para instalarse en otros sistemas a menos que sea
exactamente la misma distribución y la misma versión, habiendo antes ejecutado
el aptitude install anterior.
4.- Las instalaciones en serie son una buena solución para compilar una sola vez y
generar un paquete de instalación, que por defecto no maneje dependencias, sino
que hay que especificarlas si se quiere un paquete totalmente completo.
Poniendo el Kernel a Punto
Para que el JACK pueda trabajar en tiempo real adecuadamente se requiere hacer
más de un paso.
Página: 11
12. 1.- Cambiar “usuario” por en nombre del login de tu “usuario”
2.- Es necesario unir el usuario a un grupo que podrá luego invocar el tiempo real
en el kernel.
adduser usuario audio
3.- Editar el archivo /etc/security/limits.conf y allí agregar al final estas dos líneas
que dan permiso al grupo @audio:
@audio - rtprio 100
@audio - nice -10
@audio - memlock unlimited
Descripción de los comandos:
“rtprio” es el índice de prioridad que se le otorga al proceso en tiempo
real que viene del grupo @audio.
“memlock” será la cantidad de memoria que la aplicación puede usar
para si misma. Para trabajar con audio se recomiendan 2GB de memoria
o más. Este valor se puede expresar numéricamente (en KB) para definir
un máximo permitido. Ejemplo: @audio - memlock 769515
Nota: En otras distribuciones será necesario tener un kernel RT (realtime)
instalado. En el caso de Trisquel GNU/Linux no es necesario, puesto que el kernel
funciona perfectamente con aplicaciones RT.
4.- Reiniciar la sesión del usuario para tomar los cambios:
init 6
5.- Es importante en adelante hacer uso comedido del procesador. Por ejemplo, si
va a ver un video que tiene nivel de compresión alto, ello genera grandes
demandas al uso del CPU. Por lo tanto, se recomienda usar esta computadora sólo
para el IDJC y el JACKD, si necesita navegar en internet, se sugiere el uso de una
sola ventana y una sola pestaña de navegación y sobre todo, evitar páginas con
flash.
Levantando el JACK (con qjackctl)
La manera más sencilla de invocar un servidor con JACK es usando una aplicación
llamada qjackctl. Para quienes no deseen usar una interfaz gráfica, el servidor
puede ser levantado con las opciones que se deseen desde el intérprete de lineas
de comando.
El nombre de QJACKCTL es definido por CTL (que significa Control) del servidor
JACK y que está hecho con librerías gráficas QT, por eso la Q al principio.
Página: 12
13. 1.- Ejecutar QJACKCTL y aparecerá una pantalla como la siguiente:
2.- Antes de pulsar INICIAR, verifique que la configuración sea correcta en
SETUP.
3.- Para que funcione todo en TIEMPO REAL, es necesario que el kernel lo
soporte, de lo contrario dará errores. Se sugiere la primera vez no activar esta
opción.
4.- Nótese que en esta configuración hay una tarjeta de audio externa USB. En su
caso quizás no tenga tal hardware y no necesitará escoger hw:1 en la interfaz y
dejar “default” en esta opción será suficiente.
5.- Mantener la FRECUENCIA DE MUESTREO en 44100 Hz
Nota: La combinación de la FRECUENCIA DE MUESTREO, los
CUADROS/PERÍODO y los PERIODOS/BUFFER automáticamente dan como
resultado la LATENCIA, que es recomendable mantenerla por debajo de
Página: 13
14. 30mseg, para garantizar calidad de sonido.
“Latencia” significa retardo. En este caso es el retardo que tendrá el sonido
desde que entra al sistema hasta que sale del mismo. Evidentemente, mientras
menos retardo será mejor la calidad.
6.- Modifique a su preferencia los CUADROS/PERÍODO y los
PERIODOS/BUFFER, considerando la nota anterior.
Explorando la pantalla del Jack:
• RT: Significa que está activada la opción TIEMPO REAL en el kernel. Haga
pruebas sin esta opción, en caso que se presenten errores.
• XRUNS: Se presentarán de color rojo en el lugar donde estás los ceros de
color verde. Lo idóneo es que no hayan XRUNS.
Nota: Cuando se modifican los CUADROS y BUFFERS para lograr la menor
latencia posible hay que evitar los llamados “XRUNS”, que sin mucho detalle
significan “rupturas en el audio debido a que no hay suficiente hardware en la
tarjeta de sonido para manejar los valores asignados”. Ejemplos de XRUNS:
Observe que aparece 1(3) en color rojo, esto significa que han sucedido
pequeñas (a veces imperceptibles) interrupciones de audio. Lo cual no es tan
preocupante, pero si se obtienen valores como los siguientes 33(186):
Página: 14
15. Significa que hay problemas graves por corregir. Si esos valores se alcanzan en
menos de un minuto es posible que la voz pueda comenzar a escucharse
interrumpida por ruidos parecidos a explosiones.
Esto se corrige, ajustando adecuadamente los períodos de buffers y cuadros,
anteriormente explicado.
Por último al quedar el JACK levantado, lo cual se evidencia cuando se pulsa el
botón INICIAR del qjackctl y no ha da errores, es cuando se abre el IDJC. Es
importante mantener este orden. IDJC no funcionará bien si el JACK no está
levantado.
Página: 15