Sincronizar muros de video multicast
12 min
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 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 hdmi ® 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 player = document createelement('video'); player setattribute("x bs pcr mode", "1"); o bien \<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) "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 para resolver cualquier problema de jitter (para streams de red, no contenido local), pruebe diferentes fuentes de encoder, como harmonic, technicolor, etc , con un stream de calidad vectorial 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) 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 player = document createelement('video'); player setattribute("x bs pcr debug file ", "tmp\ /pcr txt"); o \<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 diagrama de flujo de solución de problemas 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