Consejos para emisión de directos

A continuación se enumeran una guía de buenas prácticas que te ayudarán a mejorar tu emisión de directo.

0. Programa de emisión

Para emitir por internet necesitas un programa de emisión (OBS Studio, VMix, etc). Si no conoces ningún programa o tienes dudas sobre su instalación, puedes visitar nuestro manual rápido de instalación y configuración de OBS Studio.

Comienza con tiempo

Para que el directo sea fluido y permita grandes aglomeraciones, inicialmente, se necesitan varios minutos para llenar los buffers de los servidores de emisión de directo, así que por seguridad, inicia tu emisión 10 minutos antes de la hora a la que estará publica tu emisión.

Cuando hagas pruebas, recuerda que tendrás que esperar varios minutos hasta comenzar a poder ver la señal de directo disponible. 

 

1. Configuración parámetros de emisión

Como seguramente ya sabrás, la calidad de la emisión viene definida por muchos parámetros. Vamos a hacer un resumen sencillo para introducirnos a la emisión de directos.

  • Bitrate. Cantidad de bits que se emiten por segundo. Por ejemplo 1000 kbps.
  • Resolución. Cantidad de puntos de la pantalla. Por ejemplo 720p.
  • Ratio de frames (framerate) cantidad de fotogramas por segundos de la emisión. Por ejemplo 25 fps.
  • Codificación del audio.
 

¿Cómo escogemos estos valores? Dependerá de la potencia de nuestro ordenador y de la calidad de nuestra conexión a internet.

Estos 4 valores, deberás configurarlos en el programa de emisión que utilices. En este manual se ha usado OBS Studio. 

Bitrate de vídeo

El bitrate es el parámetro que define la cantidad de información (bits) que se emiten por segundo. 
También la cantidad de información que recibirá el usuario que esté viendo el directo. 

  • 3000 kbps permite emitir cómo a calidad FULL-HD.
  • 1500 kbps permite emitir como a calidad HD.
 

Recomendamos emitir a 1500kbps.
No recomendamos emitir a más calidad porque muchos usuarios no disponen de conexión sufiente para poder recibir tanta información y podrían generarse cortes del directo mientras descargan la señal.
Sin embargo, si conoces tu capacidad y la capacidad de conexión de tu audiencia, podrías emitir hasta en 4K sin problemas.

Resolución

La resolución es la cantidad de puntos que vas a emitir. La calidad de la imagen.

Es importante diferenciar la resolución a la que graba la cámara, y la resolución a la que vas a emitir. No tienen por qué ser iguales. Existen cámaras 4K que permiten grabar a unas resoluciones altísimas, sin embargo, no vamos a emitir el directo a 4K porque sería demasiada información. Opciones de emisión:

  • 1080p = ofrece más calidad y definición de la imagen.
  • 720p = ofrecemenos una defisión de la imagen aceptable para un streaming.
 

1080 son los puntos de anchura de la imagen, la resolución completa es 1920 x 1080. 

720 son los puntos de anchura de una resolución de 1280 x 720.

Por defecto elegiremos 720p, pudiendo incrementarla si nuestro ordenador tuviera un uso de CPU bajo.

En los puntos 5 y 6 de este mismo manual se habla del uso de la CPU.

Framerate

La televisión y el cine emiten a 24 fotogramas por segundo. Bien, en nuestro caso usaremos 25 PAL

Si retransmitieras partidas de videojuegos, para que se viera fluido, tendrías que usar al menos 60 fps. Emitir a 60fps conlleva a un mayor consumo de ancho de banda y recursos tanto del ordenador del emisor, como de los usuarios que visiten el streaming.

Audio

Una buena codificación de audio se obtiene grabándolo a 44 kHz o 48 kHz de frecuencia de muestreo y emitiendo a un bitrate de audio de 192.

Ejemplo en OBS Studio

Ejemplo de configuración de Vídeo y Streaming en OBS Studio

2. Ancho de banda

Podemos escoger emitir con un bitrate de 3000 kbps, pero si nuestra conexión no puede garantizar enviar 3000 kb por segundo, no llegarán todos los paquetes al servidor y se producirán cortes en la emisión.

Debemos escoger los parámetros que nuestra conexión a internet nos permita.

Las conexiones a internet tienen dos anchos de banda: de subida y de bajada. 
El ancho de banda de subida, es el que se usa cuando se SUBE contenido a internet, como es nuestro caso, cuando emitamos, subiremos el vídeo a internet.
El ancho de banda de bajada, se usa cuando descargamos datos y no afecta a la calidad del streaming.

Para saber qué ancho de banda de conexión tenemos, podemos medir nuestra velocidad desde speedtest.net

Importante, la Si tenemos una conexión estable de fibra de 100Megas, podremos emitir tranquilamente a 6000 kbps (aprox 6 megas por segundo).   

Resultado de test de descarga.

En el resultado del test de la imagen, se puede ver como tengo una conexión de subida de 43 Mbps y de bajada de 53Mbs.

En nuestro caso, para emitir nos interesa tener una conexión de subida (o carga) lo más alta posible y estable.

3. Estabilidad de la conexión: Wifi o Cable

Siempre cable. A través de Wifi solo emitiremos si no hay más remedio.

La conexión wifi es mucho más inestable que las conexiones por cable.

Para comprobar la estabilidad de la conexión podemos usar una herramienta como ping. Si el resultado no es constante y tenemos resultados no estables, seguramente nuestro streaming tenga cortes. 

4. Saturación del ordenador

Durante la emisión hemos de analizar el uso de la CPU del ordenador.

Si supera el 50% debemos comenzar a preocuparnos y revisar los puntos 5 y 6 de este mismo manual. 

Para comprobarlo, podemos ejecutar el Monitor de Recursos de nuestro Windows o usar el comando top en Linux o Mac.

El Monitor mostrará los procesos en ejecución y el uso de CPU de cada uno de ellos. 

5. Mejorar el uso de CPU: Usando la GPU

Si nuestra tarjeta gráfica dispone de GPU propia, podemos utilizarla para codificar la emisión.

Esta opción es la más efectiva para reducir el consumo de CPU, porque usaremos otro componente del ordenador (la GPU) para realizar el trabajo de codificación, liberando a la CPU de este trabajo y permitiendo que la CPU se centre en emitir la señal a través de internet.

¿Cómo configuramos nuestro programa de emisión para que use la GPU?

Con OBS Studio es sencillo. Debemos ir a Ajustes -> Salida -> MODO DE SALIDA -> Avanzado -> EMISIÓN -> CODIFICADOR si encontramos el nombre de nuestra tarjeta gráfica o un identificador relacionado, lo seleccionamos.

En las tarjetas NVIDIA utiliza el codificador se llama NVENC. 

Si no vemos más opciones que x264 y QuickSync H.264 eso significa que nuestra tarjeta gráfica no tiene GPU propia o bien no tenemos bien instalados los drivers. En este caso lo debemos dejar como viene por defecto en x264.

Si tu tarjeta gráfica tiene GPU y no aparece, busca en internet cómo instalar los drivers de tu tarjeta gráfica en concreto en el sistema operativo.

Seleccionando el codificador NVIDIA NVENC, ya que se dispone de una tarjeta gráfica de la marca NVIDIA.

6. Mejorar el uso de CPU: trucos

  • Desactivar el Antivirus durante la retransmisión.
  • Desactivar la comprobación de actualizaciones.
  • Cerrar el resto de programas que no estéis utilizando puedan consumir recursos de CPU o de red.

7. Detectar que la conexión con el servidor funciona bien

Esta es la comprobación más técnica y posiblemente no tengas que usarla nunca. Consiste en analizar la calidad del envío de datos contra el servidor RTMP. El servidor RTMP es el que recibe la señal que envía tu ordenador.

Para esta prueba, necesitamos el programa MTR (winMTR en windows o MTR en Mac y Linux).

MTR te dirá la cantidad de servidores que atraviesan los paquetes hasta llegar al servidor de emisión y además, te informará de la cantidad de paquetes que no llegan (conocido como drops o loss). Si existen paquetes perdidos, la calidad del streaming será baja. 

Una vez instalado debes ejecutar el programa MTR indincando en el campo «host» la dirección rtmp.notikumi.com.

MTR indicando que los paquetes no están llegando al destino
MTR indicando que el 100% de los paquetes está llegando al destino
Cómo interpretar el resultado de MTR

Cada línea es un servidor que tiene que atravesar nuestra emisión para alcanzar al servidor rtmp. El servidor es el último y se identificado por ip201.ip-51-195-128-eu

Es normal que algunos servidores tengan restringido el uso de MTR a través de ellos y por eso, aparecen con interrogantes (???) o con la frase «No response from host». Ignoraremos estas líneas, dan loss 100%, porque está restringido su uso, no porque funcione incorrectamente.

Debemos comprobar que el servidor final ip201.ip-51-195-128-eu no tiene pérdidas (loss).

8. Probar

Realizar pruebas con el mismo ordenador, la misma cámara y la misma conexión a internet es la mejor manera de asegurarse que el streaming va a funcionar correctamente.

Para crear un evento de pruebas debes leer la recomendación en el FAQ

Cómo detectar por qué mi streaming no va bien

Si has seguido todas las reglas indicadas en este manual y aun así, tu directo no se ve correctamente.  Debemos comprobar varios puntos:

Uso de CPU

Si el uso de tu CPU es alto (mayor de 50%), seguramente debas repasar los puntos 5 y 6, o bien bajar la calidad de la emisión a algo que pueda codificar tu ordenador.

Uso de conexión a internet

Ancho de banda: Debes analizar con speedtest.net cuál es tu ancho de banda de subida actual y asegurarte que puedes asumir el bitrate seleccionado con comodidad. 

Latencia: Con ping analizarás la latencia que tienes.

Si tus valores no son los esperados, o no son estables, debes repasar que tu conexión a internet sea por cable, es mejor desconectar la wifi para asegurarse. Revisa que no haya otros usuarios conectados saturando la conexión.

Conexión emisor-servidor

Repasa el punto 7 de este manual y usa MTR para detectar paquetes que no llegan al servidor.

Espera hasta que se activan los buffers

Para poder dar cobertura a grandes aglomeraciones, durante el comienzo de la emisión, se necesitan al menos 5 minutos para llenar los buffers de los servidores de emisión de directo, así que por seguridad, inicia tu emisión 10 minutos antes de la hora a la que estará publica tu emisión.