Ir al contenido

Perfiles iniciales

En el primer arranque, Senta crea automáticamente 8 perfiles listos para usar - se ven de inmediato en la página Perfiles. Aquí se explica el comando ffmpeg de cada uno: qué hace, para qué sirve cada opción, y cuándo conviene (o no) usar el perfil tal cual.

Antes de ver los perfiles uno por uno - una tabla con las opciones que se repiten en casi todos (lista completa en la documentación oficial de ffmpeg):

OpciónQué hace
-ySobrescribir la salida sin pedir confirmación.
-hide_bannerNo mostrar la información de compilación/versión de ffmpeg al iniciar.
-re / -readrate 1Leer la entrada a su propia velocidad (real), en vez de tan rápido como sea posible - necesario para que un archivo se pueda transmitir como si fuera en vivo.
-stream_loop -1Repetir el archivo de entrada en bucle - al llegar al final, empezar de nuevo, indefinidamente.
-map 0:0 -map 0:1Incluir explícitamente las pistas 0 (vídeo) y 1 (audio) de la entrada - una garantía por si ffmpeg elegiría otras pistas por su cuenta.
-c:v, -c:aCódec de vídeo y de audio respectivamente. copy significa “pasar el flujo tal cual, sin recodificar”.
-b:v, -b:aBitrate objetivo de vídeo y de audio.
-preset fastEquilibrio entre velocidad de codificación y eficiencia de compresión en códecs por software (libx264/libx265) - fast sacrifica algo de calidad/tamaño a cambio de velocidad.
-profile:v mainPerfil H.264 Main - un buen equilibrio entre compatibilidad con reproductores y calidad.
-filter:v yadifDesentrelazado - elimina el entrelazado de fuentes grabadas de esa forma.
-forced-idr 1Obliga al codificador (relevante en NVENC) a generar fotogramas IDR completos en los puntos clave, en vez de I-frames ligeros - importante si el flujo se va a segmentar después (HLS/DASH) o a conmutar entre fuentes.
-rFrecuencia de fotogramas de salida.
-gTamaño del GOP - el intervalo entre fotogramas clave, en fotogramas.
-keyint_minIntervalo mínimo entre fotogramas clave.
-f mpegtsFormato del contenedor de salida - MPEG-TS.
-gpuÍndice de la GPU NVIDIA a usar para la codificación por hardware NVENC.
${i} / ${o}Las variables estándar de entrada/salida - ver Variables.
ffmpeg -y -hide_banner -i ${i} -map 0:0 -map 0:1 ${cv} ${gpu} -preset fast -profile:v main -filter:v yadif -forced-idr 1 -b:v 4M -c:a aac -b:a 128k -r 25 -g 8 -keyint_min 13 -f mpegts ${o}
WHERE
[
{
"desc": "gpu",
"data": {
"name": "GPU",
"description": "Select GPU which stream will use, set empty if you don't use GPU",
"command": "-gpu $value",
"default": ""
}
},
{
"desc": "cv",
"data": {
"name": "Video codec",
"description": "To copy original codec set copy",
"command": "-c:v $value",
"default": "",
"extension": {
"type": "select",
"options": ["h264_nvenc", "libx264", "libx265", "hevc_nvenc", "libaom-av1", "libvpx", "libvpx-vp9", "copy"]
}
}
}
]

Transcodificación HD a 4 Mbps. Al crear la transmisión puedes elegir el códec de vídeo desde un desplegable - por hardware (h264_nvenc, hevc_nvenc), por software (libx264, libx265, libaom-av1, libvpx*), o simplemente copy para no recodificar el vídeo - además de qué GPU usar para la transcodificación.

  • Ventajas: el más flexible de los perfiles iniciales - el códec se elige al crear la transmisión, sin tocar el perfil.
  • Desventajas: el desentrelazado (yadif) y los ajustes de GOP están fijos en el perfil, no son variables - si la fuente es progresiva o necesitas otro intervalo de fotogramas clave, tendrás que copiar y editar el perfil a mano.
ffmpeg -re -y -hide_banner -i ${i} -map 0:0 -map 0:1 -c:v h264_nvenc -gpu 0 -preset fast -profile:v main -filter:v yadif -forced-idr 1 -b:v 1M -c:a aac -b:a 128k -r 25 -g 8 -keyint_min 13 -f mpegts ${o}

Las mismas opciones que HD, pero con un bitrate fijo de 1 Mbps y sin variables - el códec (h264_nvenc) y la GPU (0) están fijos en el comando.

  • Ventajas: configuración mínima - listo para usar si tienes una tarjeta NVIDIA con NVENC.
  • Desventajas: no arranca sin una GPU con NVENC; cambiar el códec o el índice de GPU implica editar el comando directamente.
ffmpeg -re -y -hide_banner -stream_loop -1 -i ${i} -gpu 1 -r 30000/1001 -g 8 -keyint_min 13 -preset fast -profile:v main -filter:v yadif -forced-idr 1 -c:v h264_nvenc -b:v 4M -c:a aac -b:a 128k -f mpegts ${o} -r 30000/1001 -g 8 -keyint_min 13 -preset fast -profile:v main -filter:v yadif -forced-idr 1 -vf scale=568:-1 -c:v h264_nvenc -b:v 1M -c:a aac -b:a 128k -f mpegts ${o}

Un único proceso ffmpeg con dos salidas a la vez: una a resolución completa a 4 Mbps, y otra reducida a un ancho de 568px (-vf scale=568:-1 - la altura se calcula automáticamente para conservar la proporción) a 1 Mbps. Al crear una transmisión con este perfil, Senta muestra dos campos - Output #0 y Output #1, para la variante completa y la reducida respectivamente.

  • Ventajas: un solo comando en vez de dos transmisiones separadas - ahorra decodificar la entrada dos veces (se decodifica una sola vez para ambas salidas).
  • Desventajas: más carga en la GPU (se codifican ambas variantes a la vez), atado a NVENC, -gpu 1 - el índice de GPU está fijo en el comando en vez de ser una variable.
ffmpeg -readrate 1 -y -hide_banner -stream_loop -1 -vcodec copy -acodec aac -i ${i} ${o}

Copia el vídeo sin recodificar y convierte la pista de audio a AAC - útil cuando el audio original está en un formato que un reproductor o CDN no soporta (AC3, por ejemplo) y no quieres recodificar el vídeo.

  • Ventajas: apenas usa CPU/GPU - solo se recodifica el audio.
  • Desventajas: el bitrate de AAC no se define explícitamente, así que se usa el valor por defecto de ffmpeg, lo que puede sorprender; si el audio de origen ya es AAC, este perfil no hace falta.
// Add a logo to the video
ffmpeg -i ${i} ${logo} -filter_complex "[1][0]scale2ref=oh*mdar:ih*0.2[logo][video];[video][logo]overlay=(main_w-overlay_w)-${x}:${y}" -y ${o}
WHERE
[
{
"desc": "logo",
"data": {
"name": "Logo path",
"description": "Print the path to the image file with the logo",
"command": "-i $value",
"default": ""
}
},
{
"desc": "x",
"data": {
"name": "Shift along the X axis",
"description": "Offset from the top right corner along the X axis",
"command": "$value",
"default": ""
}
},
{
"desc": "y",
"data": {
"name": "Shift along the Y axis",
"description": "Offset from the top right corner along the Y axis",
"command": "$value",
"default": ""
}
}
]

Superpone una imagen (el logo) sobre el vídeo. scale2ref primero escala el logo a la altura del vídeo (ih*0.2 - 20% de la altura del fotograma, el ancho se calcula automáticamente con scale2ref para conservar la proporción del logo), luego overlay lo coloca con un desplazamiento x/y desde la esquina superior derecha del fotograma.

  • Ventajas: la ruta del logo y su posición se configuran con variables, sin tocar el comando.
  • Desventajas: el comando no tiene -c:v/-c:a ni -f - ffmpeg deduce el formato de salida por la extensión de ${o} (por ejemplo, output.ts); si el destino es una dirección de red sin extensión (udp://...), habrá que añadir el formato manualmente, por ejemplo -f mpegts. El logo solo se puede anclar a la esquina superior derecha - para otra posición hay que cambiar la fórmula de overlay.
// Remove sound from video
ffmpeg -i ${i} -an -c:v copy ${o}

Quita el audio (-an - sin audio) y copia el vídeo sin recodificar.

  • Ventajas: casi instantáneo - el vídeo no se recodifica.
  • Desventajas: como el vídeo se copia tal cual, este perfil no sirve si además hace falta cambiar a un contenedor/códec incompatible con el original.
// Simple testcard with 8 color bars and 1kHz tone
// You don't need any input file, just run it
ffmpeg -re -f lavfi -i pal100bars=size=1920x1080:rate=25 -c:v libx264 -g 12 -b:v 2M -f mpegts ${o}

Genera una imagen de prueba - barras de color PAL - con la fuente integrada lavfi de ffmpeg, sin ningún archivo de entrada.

  • Ventajas: no necesita una fuente de vídeo real - puedes verificar Senta → red → reproductor en un minuto.
  • Desventajas: la resolución, el bitrate y la frecuencia de fotogramas están fijos en el comando, no son variables.
// Streaming a static file
ffmpeg -re -stream_loop -1 -i ${i} -vcodec mpeg4 -aspect 16:9 -f mpegts ${o}

Repite en bucle un archivo local para simular una fuente en vivo - es exactamente el perfil usado en el ejemplo de Inicio Rápido.

  • Ventajas: la forma más simple de convertir cualquier archivo en una transmisión de prueba continua.
  • Desventajas: el códec (mpeg4) está anticuado frente a h264/h265 y es menos eficiente en bitrate; la relación de aspecto queda fija en 16:9 sin importar el vídeo real.