Cómo hacer streaming en vivo en tu propia web (sin YouTube)
Guía paso a paso para transmitir en vivo desde tu propia web sin depender de YouTube: codificador, servidor RTMP, salida HLS, reproductor y ancho de banda.
Guía de GurztechnologyTransmitir en vivo desde tu propia web, y no desde YouTube o Facebook, te da algo que esas plataformas no te dan: el control. Controlas la marca, los datos de tu audiencia, la publicidad y las reglas del juego. A cambio, tienes que armar la cadena técnica tú mismo. La buena noticia es que esa cadena es más sencilla de lo que parece. Aquí tienes el recorrido completo, paso a paso.
Por qué transmitir en tu propia web
- Sin competencia al lado: nadie verá videos "recomendados" de la competencia junto al tuyo.
- Tus datos son tuyos: sabes quién ve, desde dónde y por cuánto tiempo, sin intermediarios.
- Monetización libre: pones tu propia publicidad, cobros o muro de pago sin compartir ingresos.
- Marca propia: el reproductor, los colores y el dominio son los tuyos.
La contraparte es que asumes el ancho de banda y la infraestructura. Por eso conviene entender cada pieza antes de encender la cámara.
Paso 1: el codificador (de tu cámara al servidor)
El codificador toma lo que captas (cámara, micrófono, pantalla) y lo comprime en video H.264 y audio AAC para enviarlo. La opción gratuita y estándar es OBS Studio; también sirven vMix, Streamlabs o un codificador de hardware.
En OBS vas a Ajustes, seccion Emisión, eliges "Servicio: Personalizado" y pegas dos datos que te da tu servidor: la URL del servidor (algo como rtmp://tudominio:1935/live) y una clave de transmisión (stream key). Configura el bitrate de video según tu subida de internet: 2.500 a 4.000 kbps para 720p, o 4.500 a 6.000 kbps para 1080p. Pon el intervalo de keyframe en 2 segundos; esto es importante para que la salida HLS corte bien.
Paso 2: el servidor de medios
El servidor recibe tu señal por RTMP y la convierte en algo que el público pueda ver. Sus tareas son:
- Recibir el stream RTMP entrante.
- Transcodificar a varias calidades si quieres bitrate adaptativo (1080p, 720p, 480p).
- Generar los segmentos y la lista .m3u8 de HLS.
Puedes montarlo tú con nginx y su módulo RTMP, o con software como Wowza o MediaMTX. Si no quieres administrar servidores, un proveedor con este servicio ya listo te ahorra la parte más espinosa: en gurztechnology el servidor de medios con ingesta RTMP y salida HLS viene preconfigurado, así solo te ocupas de transmitir.
Paso 3: la salida HLS
HLS (HTTP Live Streaming) es lo que llega al espectador. El servidor publica una URL .m3u8 que el reproductor de tu web consume. HLS funciona sobre HTTP, así que se reproduce en iPhone, Android, navegadores y Smart TVs sin plugins, y se puede cachear en una CDN para servir a mucha gente sin saturar tu origen. Si necesitas menos demora, activa LL-HLS (Low-Latency HLS), que baja la latencia de 15-30 segundos a unos 2-5 segundos.
Paso 4: el reproductor en tu web
Algunos navegadores (Safari) reproducen HLS de forma nativa, pero para que funcione en todos conviene usar una librería JavaScript. Las dos más usadas son hls.js y Video.js. Un ejemplo mínimo con hls.js:
- Incluyes la librería hls.js en tu página.
- Colocas un elemento
<video>. - Con unas líneas de JavaScript cargas la URL .m3u8 dentro de ese video.
Video.js te da además controles con estilo, soporte de subtítulos y fácil integración de publicidad, lo que es cómodo si quieres una apariencia profesional sin programar mucho.
Paso 5: dominio, SSL y seguridad
Tu transmisión debe ir por HTTPS. Los navegadores bloquean contenido mixto, así que si tu web es segura pero el stream no, no se verá. Asegúrate de tener un certificado SSL válido en el dominio que sirve el .m3u8. Protege también tu clave de transmisión como si fuera una contraseña: con ella cualquiera podría emitir en tu canal. Si el servidor lo permite, limita la ingesta por IP o usa tokens de publicación.
Paso 6: calcula tu ancho de banda
Este es el punto que más sorprende a quien transmite por su cuenta. El consumo se estima así: bitrate del video multiplicado por número de espectadores concurrentes. Si emites a 3 Mbps y tienes 100 personas viendo a la vez, necesitas cerca de 300 Mbps de salida sostenida, y eso acumula terabytes en pocas horas.
- Con audiencias pequeñas, el servidor propio aguanta.
- Con audiencias medianas o grandes, una CDN es casi obligatoria: cachea los segmentos HLS y reparte la carga.
- Revisa siempre el límite de tráfico mensual de tu plan de hosting antes de un evento grande.
Checklist antes de salir al aire
- OBS configurado con la URL RTMP y la clave correctas.
- Keyframe cada 2 segundos y bitrate acorde a tu subida.
- Servidor de medios recibiendo y generando HLS.
- URL .m3u8 probada en el reproductor, en móvil y escritorio.
- Certificado SSL activo en el dominio.
- Ancho de banda o CDN dimensionados para la audiencia esperada.
- Una prueba real de 10 minutos antes del evento.
Conclusión
Montar streaming en tu propia web es encadenar cinco piezas: codificador, servidor de medios, salida HLS, reproductor y una red que aguante el tráfico. Ninguna es mágica, pero cada una debe estar bien ajustada, sobre todo los keyframes, el SSL y el ancho de banda. Empieza con una prueba pequeña, mide cuánta audiencia real tienes y escala con CDN cuando haga falta. El premio es tener tu transmisión, tu marca y tus datos bajo tu propio techo.