Skip to content

CBR para DVB

A un modulador no le hace falta una tasa media, le hace falta uniformidad a nivel de paquetes TS: el ancho de banda está asignado y el stream debe ocuparlo exactamente, sin caídas ni picos. El mismo requisito lo ponen los receptores profesionales y las redes en las que el transporte se cuenta por ancho de banda y no por una media por minuto.

El CBR en Mcaster es una propiedad del multiplexor de salida, no un botón aparte de «activar CBR».

Qué hace el multiplexor

  • La tasa objetivo se deriva de los bitrates de las pistas — con un margen de alrededor del 5% para el crecimiento y un presupuesto para las tablas de servicio.
  • Los huecos se rellenan con paquetes nulos (PID 0x1FFF): el ancho de banda queda ocupado de forma uniforme aunque los fotogramas lleguen a ráfagas.
  • El PCR se coloca desde un reloj sin deriva, por eso la divergencia entre PCR y DTS no se acumula ni en muchas horas de emisión.
  • Se tiene en cuenta el modelo de búfer del decodificador (HRD) — los desbordamientos y los vaciamientos se vigilan en lugar de descubrirse en el receptor.

La uniformidad se mide contra el reloj interno del stream (27 MHz), no contra el reloj de pared: la disposición no depende de lo irregularmente que lleguen los fotogramas desde la fuente.

Lo que cuesta la uniformidad

Las tres exigencias de un multiplex — disponer los paquetes de forma uniforme, no detenerse nunca, no perder nada — se satisfacen por pares, pero no las tres a la vez. La uniformidad es una afirmación sobre el futuro, mientras que los datos son un hecho sobre el pasado: para disponer los paquetes uniformemente, la programación tiene que conocer el ritmo por adelantado, y el ritmo solo puede medirse por lo que ya ha llegado.

En la práctica, esto significa:

  • Un PID sin nada que enviar cede su hueco en vez de detener el multiplex. Una pista de audio anunciada en la PMT pero silenciosa no debe colgar el vídeo — y no lo cuelga.
  • Un PID rezagado se recupera dentro de la ventana en lugar de ser descartado. Un mux de difusión clásico pierde datos en este punto; aquí el intercambio se resuelve al revés.
  • El ritmo se mide por el PES empaquetado, no se deduce del ancho de banda declarado multiplicado por una constante.

Lo que de ahí se sigue para el operador: fije el bitrate de salida con honestidad, con margen para los picos, y no al bit justo. Un ancho de banda recortado no es «calidad un poco peor», es un PID rezagado de forma sistemática.

Configure las pistas de salida

Abra el stream, la pestaña Transcodificador. Puede empezar desde un preset — por ejemplo Escalera estándar 1080/720/360 + AAC — y editar los peldaños a partir de ahí.

En un peldaño del bloque Vídeo (escalera):

  • Bitrate (kbps) — la tasa objetivo de la pista. La suma de las pistas más las tablas de servicio es el ancho de banda que ocupará el flujo de transporte.
  • Longitud GOP y Estructura GOP — para difusión, el GOP suele ser de exactamente un segundo: un punto de entrada para el receptor y para el empalme. El botón Unificar GOP lo alinea en todos los peldaños.
  • Códec — con el valor Tal cual, el peldaño no se recodifica. Si la fuente ya llegó con la forma adecuada, al multiplexor no le hace falta un transcodificador para disponerla uniformemente.
  • Altura, Rate control y Preset del codificador — las demás propiedades del peldaño.

El bloque Codificación elige quién hace el trabajo: CPU o GPU NVIDIA (con una tarjeta elegida, o automáticamente la menos cargada).

Warning

Un peldaño passthrough junto a peldaños codificados degrada la escalera: su GOP y sus fotogramas clave no están alineados con los demás peldaños. El panel marca ese peldaño por separado.

El transcodificador «graba» el logotipo del canal o una marca de agua en la pista de vídeo: la imagen se ve en todas las salidas — la señal multidifusión hacia el modulador, la entrega OTT y las copias grabadas. El logotipo de toda la escalera se define con la tarjeta Logotipo de la escalera; los mismos campos viven en los ajustes avanzados de cada peldaño.

La tarjeta define el logotipo una vez para toda la escalera:

  • Asignar — elegir la imagen de la biblioteca de logotipos: búsqueda por nombre y carga de un archivo PNG, JPEG o WebP de hasta 1 MB.
  • Posición en el fotograma — esquina superior izquierda, superior derecha, inferior izquierda, inferior derecha o centro. Los desplazamientos se cuentan desde la esquina elegida hacia dentro y, en el centro, desde el centro.
  • Altura de la imagen (…p), px — la altura del logotipo en el peldaño superior; el ancho se deriva de las proporciones de la imagen. Un campo vacío significa el tamaño nativo de la imagen, que se muestra junto a la vista previa.
  • Desplazamiento X, Desplazamiento Y — los desplazamientos en píxeles.

Los valores se dan para el peldaño superior y se recalculan en los demás en proporción a su altura: bajo los campos se ve qué recibirá cada peldaño antes de Guardar. El logotipo se pone solo en un peldaño con codificación: el passthrough («Tal cual») y los códecs RAW no lo tienen.

La tarjeta Logotipo de la escalera con una imagen asignada y el recálculo por peldaños

Desentrelazado

Una entrada entrelazada — SD MPEG-2, 1080i de difusión — codificada en vídeo progresivo se ve como un peine. El Desentrelazado vive en el bloque Decodificador, porque es una propiedad de la entrada y no de un peldaño: el decodificado ocurre una sola vez y la imagen resuelta va a todas las pistas de salida progresivas. Un peldaño con salida entrelazada recibe el fotograma antes del filtro.

Modo Qué hace
Automático (solo fotogramas entrelazados) el valor por defecto: el filtro se aplica a los fotogramas que el decodificador marcó como entrelazados; una entrada progresiva pasa de largo sin coste
Forzado (todos los fotogramas) para fuentes que mienten sobre la entrelazación
Desactivado no se construye ningún filtro, los fotogramas van al codificador tal como son

El desentrelazado no cambia la frecuencia de fotogramas: un fotograma progresivo por cada fotograma de entrada.

Salida entrelazada

Un receptor de difusión 1080i o 576i necesita una señal entrelazada, mientras que el transcodificador codifica en progresivo por defecto. Para que un peldaño salga entrelazado, pulse Más en él y active Salida entrelazada.

La sección Más de un peldaño 1080p con Salida entrelazada marcada

Qué ocurre con el peldaño:

  • El orden de campos viene de la fuente — campo superior primero o inferior primero; el transcodificador no lo cambia. Una fuente progresiva no tiene orden de campos y sale con el campo inferior primero; el comando de abajo comprueba el orden.
  • Los campos se procesan por separado — el cambio de tamaño y la conversión de color no mezclan los campos entre sí. La excepción es una fuente 4:2:0 cuya altura no es múltiplo de 4 (por ejemplo, NTSC de 486 líneas): ese fotograma no se divide en dos campos iguales, así que el transcodificador lo procesa entero y los campos se mezclan; en el registro aparece entonces la advertencia interlaced source cannot be split into fields.
  • El desentrelazado no afecta a este peldaño — recibe el fotograma de la fuente antes del filtro, mientras que los peldaños progresivos de la misma escalera lo reciben después. Por eso un 1080i de difusión y un 720p progresivo para internet conviven en un mismo stream.

El vídeo se codifica en H.264 con MBAFF: la decisión «campo o fotograma» se toma para zonas dentro del fotograma.

La casilla no está disponible en todos los peldaños:

  • Solo con H.264 — al cambiar a otro códec, la casilla se desmarca sola.
  • Solo con codificación en CPU — con GPU NVIDIA la casilla no se puede marcar, y una ya marcada no se desmarca sola: Guardar falla hasta que la desmarque.
  • Altura de salida múltiplo de 4 — cada campo ocupa la mitad del fotograma. Un peldaño sin cambio de tamaño toma la altura de la fuente, y el transcodificador la comprueba al arrancar.

Una entrada entrelazada sin comprimir (SDI, ST 2110) no se codifica en un peldaño entrelazado: esa entrada no trae el orden de campos, y los campos saldrían intercambiados. El transcodificador no arranca ese peldaño e indica el motivo.

Si un ajuste no es válido, Guardar falla y el motivo aparece bajo la casilla del peldaño. Si un peldaño no arranca con el stream ya en marcha, sobre las pestañas del stream aparece el aviso El transcodificador no funciona con el motivo y un botón a la pestaña Transcodificador.

Un peldaño 542p con Salida entrelazada marcada y el motivo del rechazo debajo

El orden de campos de la salida se comprueba fotograma a fotograma. No se fíe del resumen del stream en ffprobe (field_order): según cómo esté escrito el stream, en la salida de x264 puede mostrar tt aunque el campo inferior vaya primero.

ffprobe -v error -select_streams v -show_entries frame=interlaced_frame,top_field_first -of csv=p=0 out.ts | sort | uniq -c

Las líneas 1,1 significan campo superior primero; 1,0, campo inferior primero; 0,0, fotogramas progresivos: el peldaño no salió entrelazado.

Comprobación

Qué mirar en la salida:

  • la tasa en el receptor — no debe flotar; una caída significa que el multiplex no tenía nada que enviar;
  • el jitter del PCR y los contadores de continuidad — véase TR 101 290; un stream uniforme con un PCR incorrecto no le sirve de nada a un modulador;
  • las tablas de servicio — el receptor debe ver el servicio bajo el número esperado, véase Salida MPEG-TS.

Anular las tablas en un destino individual no rompe el CBR: el destino recibe una copia de la salida compartida con PID y tablas reescritos, mientras que la disposición de los paquetes y el PCR siguen siendo los del multiplex compartido.

Qué viene después