Radio Seven

Recuerdo el inicio de los años 2000 cuando había ciertas radios que se podían escuchar de forma online, nunca supe cual era el proceso y las tecnologías utilizadas para poder lograr un sitio streming por aquellos tiempos.

Un día un amigo mio tuvo la idea de revivir esa experiencia, tener una radio online donde él pueda interactuar con los oyentes y asu vez actuar como locutor entre canción y canción. Me alegra haber sido la persona con la que compartió la idea, ay que me gusta experimentar y probar lo que se puede lograr ahora con tantas tecnologáis emergiendo y tantos proyectos de codigo libre a disposiicón del mundo.

Por un momento pensé en desarrollar la idea en un proyecto desde 0, pero, oye! para que reinventar la rueda, es probable que alguien ya lo haya hecho; es lo que pensé.

Me puse a navegar por internet, consultando proyectos y coǵio disponible en Github, hasta que encontré este proyecto tan interesaten llamado Owncast. Parecía diñado exactamente para cumplir con la idea de mi amigo, asi que me puse a leer documentación y posteriomente las tareas de despliegue. Esa misma noche ya lo teníamos desplegado y listo para las pruebas.

Radio Seven.

Owncast Config

instanceDetails:
  name: RadioSeven
  title: RadioSeven
  summary: "RadioSeven Huacho - Lima Perú."
  logo: /data/logo.png
  tags:
    - music
    - lima
    - peru
    - software
    - streaming
  extraPageContent: "<p>This page is <strong>supersssssssssssssssss</strong> cool!</p>"
  version: Owncast 0.0.7
  # https://owncast.online/docs/configuration/#external-links
  # for full list of supported social links.  All optional.
  socialHandles:
    - platform: facebook
      url: https://www.facebook.com/kevinpaul.manriquenizama

videoSettings:
  # Change this value and keep it secure.  Treat it like a password to your live stream.
  streamingKey: XXXXX

# Set to true if you don't want the service checking for future releases.
disableUpgradeChecks: false

StreamQuality:
  type: object
  properties:
    videoPassthrough: false
    audioPassthrough: true

Docker Compose

version: '2.4'
services:
  owncast:
    image: gabekangas/owncast:latest
    restart: always
    volumes:
      - ${PWD}/config.yaml:/app/config.yaml # Adjust once you create your own config.yaml
      - ${PWD}/owncast_db:/db # Remove if you don't want chat persistant
      - ${PWD}/data:/app/data 
    command: /app/owncast -configFile=config.yaml --enableVerboseLogging -database=/db/chat.db
    environment: 
    - TZ=America/Lima
    ports:
    - 8080:8080
    - 1935:1935

Digital Ocean

Para el alojamiento de la aplicación se utilizó un servidor de mínimo en Digital Ocean. Se instaló docker y docker-compose para el levatnamiento de los servicios.

Freenom

El dominio se adquirio por un periodo de 12 meses de forma gratuita utilizando la plataforma Freenom.

Cloudflare

Para agregar una capa de seguridad a al aplicación, se utilizó Cloudflare. Se realizó la configuración en el panel de admnistración de Freenom para establecer como servidores de nombres las direcciones proistas por Cloudflare.

OBS Studio

Para realizar el streming hacia Owncast se utilizó el software OBS Studio.

© 2022 Jorge Luis Parihuamán Arivilca