---
title: Sincronizar muros de video multicast
slug: hardware/es/sincronizar-muros-de-video-multicast
docTags: 
createdAt: 2025-03-11T07:10:25.852Z
---

La reproducción síncrona de streams requiere un transport stream con una *Referencia de reloj del programa* (PCR) integrada enviada como multicast. El PCR del stream en reproducción se utiliza como el reloj común (el *Reloj de la hora del sistema* o STC) y el STC del reproductor de video se bloquea al PCR entrante, por lo que el servidor debe enviar este reloj en el momento correcto. Este documento es una descripción general; para obtener información adicional sobre la sincronización del videowall, consulte [Arquitectura de sincronización de Video Wall](docId:2Tw5hFK9U5TjdWF8X-1s3).

# Requisitos del stream

- El stream multicast debe contener PCR correctamente temporizados. Esto significa que:
  - Los PCR son regulares (por ejemplo, cada 50 ms)
  - Los PCR deben representar con precisión el momento en que aparecen en la red.&#x20;
  - Debe haber un máximo de un valor PCR por paquete de red. No todos los servidores pueden gestionar esto.
- El stream debe tener una resolución y frame rate compatibles con el reproductor.
- Se requiere un encoder comercial de alta calidad. BrightSign no es adecuado como encoder.

# Información adicional

## Jitter de PCR

El jitter de PCR es la variabilidad entre el tiempo real de llegada del PCR y el tiempo correcto de llegada: debe tener un jitter bajo en el PCR para lograr una buena sincronización. Aunque el jitter no debería ser una propiedad del stream, casi todos los servidores agregan grandes cantidades de jitter al PCR antes de que aparezca en la red. Cuando el tiempo de llegada del PCR varía, siempre estará retrasado respecto al tiempo correcto de llegada (a menos que el servidor envíe el PCR antes de tiempo).

## Contenido vs. frame rate del modo de video

Al referirse a la coincidencia de estos frame rates, todos los componentes de los frame rates son relevantes. Por lo tanto, 29.97p (progresivo) no es idéntico a 29.97i (entrelazado).

## Limitaciones conocidas

Durante aproximadamente el primer minuto de reproducción del stream, el reloj de salida HDM&#x49;**®** se ajustará a \~240ppm para alinear su VSYNC con el PCR. Con algunas pantallas, esto puede causar problemas HDMI mientras se produce el bloqueo. Después de este período de bloqueo, los VSYNC de los reproductores que reproducen el mismo stream multicast deberían estar alineados y las pantallas completamente sincronizadas.

Tenga en cuenta que el frame rate del modo de video afecta la velocidad de bloqueo, porque la velocidad máxima de ajuste del reloj es de 240ppm y cuanto menor sea el frame rate, más deberá ajustarse el tiempo de los VSYNC. Por ejemplo, el video 25p tiene un período de 40 ms, por lo que para alinear el VSYNC podría ser necesario ajustarlo en 20 ms a 240 microsegundos/segundo, pero para video 60p el VSYNC solo tendrá que desplazarse un máximo de 8 ms.

## Cómo configurar el modo PCR

El comportamiento predeterminado del firmware es ejecutar el código anterior de bloqueo PCR. Para habilitar el nuevo código, el parámetro pcr-mode debe establecerse en uno:

```text
player = document.createElement('video');
player.setAttribute("x-bs-pcr-mode", "1");
```

O bien:

```text
<video loop width="1920" height="1080" hwz="on" x-bs-pcr-mode="1">
     <source src="udp:// 239.194.0.204:5000/">
</video>
```

O agregado a la URL (esto le permite probar la función sin cambiar su JavaScript):

```text
"udp:// 239.194.0.204:5000/?pcrmode=1
```

## Pruebas

Para realizar pruebas, actualice a BrightSignOS 8.2, utilice el modo PCR en el elemento de video (ya sea en roVideoPlayer o en la etiqueta HTLM5 Video con PcrMode:1 o x-bs-pcr-mode='1), y llame a `SetSyncDomain` para habilitar el bloqueo VSYNC en todo el video wall. El comportamiento esperado es que las unidades del wall estén perfectamente sincronizadas. El VSYNC de cada reproductor se sincronizará, lo que significa que todas las pantallas recibirán frames de los distintos reproductores BrightSign de forma sincronizada. El contenido se sincroniza con el PCR, que también es el mismo en todos los reproductores, por lo que los frames emitidos por cada reproductor individual serán los mismos.&#x20;

Para resolver cualquier problema de jitter (para streams de red, no contenido local), pruebe:

1. Diferentes fuentes de encoder, como Harmonic, Technicolor, etc., con un stream de calidad vectorial.
2. Comportamiento a largo plazo (deriva de sincronización)

Consulte la sección siguiente para obtener más información sobre la depuración de problemas de sincronización.

# Solución de problemas

## Análisis de PCR

*pcapreport* captura un PCAP del stream de video con PCR y compara el tiempo real del PCAP y el valor PCR para ver la diferencia entre los dos relojes. Si el PCAP se registra en el servidor, esto debería dar como resultado una desviación cercana a 0, ya que es probable que los relojes sean los mismos. Si el PCAP se registra en otro dispositivo, entonces se esperaría una desviación que refleje la diferencia en las velocidades de reloj entre el dispositivo y el servidor. *pcapreport* es parte de un conjunto de herramientas de transform stream (tstools) y tiene múltiples [indicadores](https://manpages.debian.org/testing/tstools/pcapreport.1.en.html) (por ejemplo, *pcapreport -t* puede generar un stream de prueba desde cualquier PCAP).&#x20;

Tenga en cuenta que *pcapreport* indicará problemas de PCR, pero es posible que se necesiten herramientas adicionales para analizar más a fondo la salida de *pcapreport* .

Para instalar *pcapreport* en macOS X:

- Descargue [este repositorio](https://github.com/sepkooo/tstools-for-macos) como un archivo zip y descomprímalo en su Mac.
- En su terminal, vaya al directorio que acaba de descomprimir.
- Ejecute `sudo make install` en la línea de comandos (es posible que necesite ingresar su contraseña).

La salida de *pcapreport* será un archivo .csv de Excel.

## Salida de depuración de PCR

La salida de depuración de PCR solo debe utilizarse para depuración.

Para habilitar la salida de depuración de PCR, configure el atributo *x-bs-pcr-debug-file* :

```text
player = document.createElement('video');
player.setAttribute("x-bs-pcr-debug-file ", "tmp:/pcr.txt");
```

o:

```text
<video loop width="1920" height="1080" hwz="on" x-bs-pcr-mode="1" x-bs-pcr-debug-file="tmp:/pcr.txt">
     <source src="udp:// 239.194.0.204:5000/">
</video>
```

La salida de depuración de PCR será un archivo txt, como en el ejemplo siguiente: 

::Image[]{src="https://api.archbee.com/api/optimize/511c8QBH-VHiwWnyzIwUb/AN8aqI3uxLJ-4mVXiV_uT_7pcrtxtnew.png" size="50" width="1144" height="1361" position="center" darkWidth="1144" darkHeight="1361" showCaption="false"}

## Diagrama de flujo de solución de problemas

![](https://api.archbee.com/api/optimize/511c8QBH-VHiwWnyzIwUb/atUmOpkF45a3yUIHTiQfd_videowallfinal6.png)

# Información de contacto

Si ha completado el diagrama de flujo de solución de problemas y no ha obtenido los resultados esperados, envíe un [ticket de Zendesk](https://brightsign.zendesk.com/) utilizando el formulario de admisión y proporcionando los detalles solicitados para que podamos brindar soporte adicional.
