Como crear una radio para YouTube o Twitch

La verdad que tenia ganas de crear mi propia radio desde hace un tiempo, pero claro, al no tener un ordenador con buena conexión a internet ni disponibilidad 24/7 nunca llegue a realizar nada similar, pero hace poco se me quedo un VPS sin apenas uso y se me ocurrió emplearlo para esto. Por cierto, no trato de crear la típica radio que únicamente emite audio, en este caso también ira acompañado de video, ya sea una imagen estática, un gif o videos completos (en realidad es muy ineficiente este método, ya que estamos empleando muchos recursos para crear una radio pero mola). Ademas hará radiodifusión en Youtube o Twitch, la ventaja de emplear estos servicios es que si se diera el caso de tener muchos usuarios conectados no dependería de nuestra conexión para que funcionara.

Bueno vamos al lio, primero vamos con los requisitos, ya que no todo sirve:

  • Una maquina con buena conexión a internet, recomendado como mínimo 10MB/s de subida
  • La maquina debe estar conectada 24/7
  • Una conexión SSH y saber como usarla
  • Ganas de aprender y entender que se hace, no solo copiar y pegar los comandos
  • Recomendado Debian9 o similar, ya que empleare esta para el tutorial
  • Se da por hecho unos conocimientos básicos sobre el uso de la terminal, como saber usar ssh, apt, sudo, etc
  • Recomendado 1GB de ram y un doble núcleo a ser posible

En mi caso voy a emplear un VPS muy barato (por 1€ al mes), alquilado en “aruba cloud” (no quiero poner enlaces para hacer publicidad, pero lo menciono por si le sirve a alguien). El problema de emplear un VPS es que no tiene interfaz gráfica ni tarjeta de sonido por lo tanto teóricamente no podemos emplear OBS para el stream, ni hay software para terminal para realizar esta tarea, ya que recordemos que debemos emitir video aparte de música, pero todo eso tiene solución y de hecho más de una que es la gracia de este tutorial.

Empezamos con una instalación limpia de Debian 9, como es habitual empezamos comprobando que todo este al día:

Ahora procedemos a instalar todos los paquetes necesario, por no alargar todo demasiado los vamos a instalar todos de golpe:

De forma resumida vamos a usar vnc4server para acceder de forma gráfica al servidor (este crea una pantalla virtual). Necesitamos obs y ffmpeg para el stream en si, un reproductor como vlc o moc para crear la musica, openboxmenu, openbox, xfce4terminal, tint2 para crear el entorno gráfico. Finalmente las herramientas de alsa y pavucontrol para gestionar el sonido ya que por defecto Debian viene con el mute puesto y necesitaremos gestionar la entrada y salida de sonido fácilmente. De forma opcional instalamos pythonpip para poder instalar youtubedl que es una buena forma de obtener música.

Vamos a comenzar configurando VNC para el acceso, para ello creamos un usuario aislado, por seguridad, nunca ejecutes todo como root:

Ahora nos logueamos como este nuevo usuario, podemos emplear el clásico su o iniciar una sesión SSH nueva:

Ahora vamos a configurar vnc para este usuario, hay que estar atentos ya que la primera vez que lo iniciemos nos pedirá una contraseña para poder acceder al servicio.

vncserver

En este momento se ha abierto una sesión VNC en el puerto 5901 a la que podremos acceder. En este momento solamente se puede acceder localmente por seguridad, ya que el protocolo VNC no va cifrado y es vulnerable, pero se puede cifrar con SSH. El caso es que podemos ejecutar hasta 9 sesiones simultaneas, cada una se hospeda en un puerto diferente, la primera en 5901, la segunda en 5902 hasta el 5909. Para cerrar una sesión VNC lo hacemos empleando la opción kill:

El “1” lo podemos cambiar por el numero de la sesión si hemos abierto más de una. Ahora vamos a configurar las aplicaciones que se lanzan al abrir la sesión, ya que tenemos entorno de las X pero no se ejecutara nada:

En el interior del fichero agregamos openbox y tint2 de tal forma:

Como alternativa podemos usar un entorno completo como xfce o mate, pero consumirán muchísimos mas recursos de forma innecesaria.

En este momento debemos cerrar la sesión SSH para iniciarla correctamente:

Básicamente debemos permitir el paso del protocolo X y la redirección del puertos, vamos a crear un túnel entre las 2 maquinas para poder acceder desde nuestro equipo local al puerto 5901 remoto, ya que VNC no permite accesos externos (recordemos que es por un tema de seguridad).

En caso de no tener ya iniciada una sesión VNC la abrimos con “vncserver” (recordad que aun cerrando SSH esta se queda abierta).

Ahora desde nuestro ordenador local abrimos tigervnc, dependiendo de nuestra distro se instalara de una forma u otra pero voy a resumir las 2 formas más comunes:

Como dato extra, desde OSX podemos acceder desde safari  poniendo “vnc://ip:puerto”, por desgracia ni firefox ni otros navegadores son compatibles con este sistema y debemos emplear software dedicado. Ahora ponemos en tigervnc la siguiente dirección: “127.0.0.1:5901”.

tigevnc

A continuación nos pedirá la contraseña configurada anteriormente y se nos abrirá el entorno con openbox y tint2. Openbox se usa muy fácilmente, simplemente hacemos click derecho y se nos abre un menú con las aplicaciones que tenemos instaladas. tint2 es la barra de abajo, esta únicamente indica las aplicaciones que tenemos abiertas y nos permite minimizarlas, cambiar entre ellas, etc. Protip: podemos emplear obmenu para personalizar el menú que nos aparece, en mi caso cambio el navegdor por OBS tal que así:

obmenu

En este momento tenemos 2 opciones, empezar a jugar con OBS para descubrir que no tenemos tarjeta de sonido (si se trata de un vps, en un equipo real o maquina virtual no tendremos este problema) o directamente arreglar el problema. El caso es que de momento vamos a desmutear el sistema con alsamixer:

alsamixer

Si tenemos una tarjeta de sonido enhorabuena porque podemos omitir un par de pasos, en caso contrario debemos de emplear un modulo para conseguir que funcione los reproductores:

Con esto deberíamos de obtener nuestra preciada tarjeta de sonido, el problema es que sera por software y no tiene la misma calidad que una real, pero para este caso nos servirá. Ahora volvemos a ejecutar alsamixer para configurar el sonido.

En caso de que funcione debemos agregar al inicio el modulo editando el fichero /etc/modules

Al final agregamos:

Finalmente queda configurar OBS y Twitch para poder emitir, pero el post ya es lo suficientemente largo y lo dejare para una segunda parte. Dejad comentarios si os gusta la idea y ante cualquier duda preguntad.

Acerca de konqi

Perfection. Deep in the core. In strands.

5
Deja una respuesta

avatar
3 Hilos de comentario
2 Respuestas de hilo
1 Seguidores
 
Comentario más reaccionado
El hilo de comentarios más caliente
4 Autores de comentarios
NoelsamkonqiLignuxEsNoob Autores de comentarios recientes
  Suscribirse  
Los más recientes Los más antiguos Más votados
Notificarme las
sam
Invitado
sam

Muy interesante el artículo, felicidades!

LignuxEsNoob
Invitado

¿WTF? ¿Instalar un entorno de escritorio en un VPS?

LOOOOOOOOOOOOOOOOOOOOOOOOL.

Noel
Admin

No es lo habitual pero puede ser interesante, piénsalo que puede ser un ordenador remoto con potencial, tu con internet y 500mb de ram podrías ejecutar aplicaciones más potentes.

trackback

[…] entrada Como crear una radio para YouTube o Twitch se publicó primero en […]

Suscríbete gratis

Suscríbete gratis

Recibe las últimas noticias y novedades de LiGNUx en tu email.
Sin publicidad, sin Spam.

Gracias por suscribirte a LiGNUx.