Video · Guía práctica
TouchDesigner: Video Device In TOP, sincronización de captura y diagnóstico
Si el equipo bloquea a referencia pero el contenido filmado sigue fuera de tiempo, separá captura, procesamiento y salida. Video Device In TOP controla la entrada; sus estados no comprueban por sí solos la salida de GPU ni el LED. Cotejá el build instalado, el driver y la tarjeta antes de aplicar los parámetros de la documentación Latest.
Identificar la captura y el alcance de cada control
Empezá por identificar la tarjeta de captura y el recorrido que falla: fuente, entrada seleccionada, nodo y destino físico. Guardá el proyecto y los parámetros iniciales antes de comparar modos.
Anotá fabricante y modelo completo de cada capturadora, driver, sistema operativo y build de TouchDesigner. Una denominación como «DeckLink 4K» no alcanza para elegir un manual ni confirmar funciones. Si el recorrido usa un generador, GPU sincronizada, procesador LED o cámara, registrá también sus modelos, firmware y conexiones; identificá dónde entra la referencia en cada equipo.
La documentación oficial Video Device In TOP distingue los controles de captura según la biblioteca y el dispositivo. Usá la referencia Latest indicada en Fuentes y cotejá las opciones con el build instalado: no supongas que 2025.30000 presenta todos los controles de la misma forma.
Antes del ensayo, comprobá en la documentación de la tarjeta qué modos admite con ese driver. La lista de fabricantes del operador orienta la selección de biblioteca, pero no confirma todas las combinaciones de modelos.
Transfer Mode: esperar la llegada de un cuadro con el modo AJA
Derivative lo restringe a AJA: el proceso espera la llegada de un cuadro por esa entrada y después lo usa para procesar el nodo. La descripción advierte que el rendimiento puede empeorar.
Para ese modo, el fabricante indica desactivar Real-time en la interfaz superior y usar sólo un nodo con ese modo por proceso. Conservá esas dos condiciones junto al nombre del control. No son una instrucción general para cualquier captura ni para Sync Inputs.
Si no encontrás la opción, anotá build, Driver, Device y modelo exacto antes de buscar otro menú. Que una tarjeta Blackmagic capture imagen no le concede este modo AJA.
Como ensayo propuesto, guardá primero el archivo y los parámetros iniciales. Si la documentación del equipo real respalda el modo, compará el comportamiento del proceso y sus contadores con la configuración acordada, fuera de programa. Conservá por separado el resultado en la salida física y en cámara; esta guía no promete una latencia total nula.
| Qué querés comprobar | Control documentado | Alcance que falta completar |
|---|---|---|
| Proceso que espera una captura | Transfer Mode: On-Demand, Sync to Frame Input; AJA. Real-time desactivado y un nodo por proceso. | Build, driver y tarjeta reales; rendimiento y salida final. |
| Capturas agrupadas | Sync Inputs y Sync Group Index; fuentes con genlock. | Compatibilidad de entradas, estados y contadores por grupo. |
| Cuadros enviados por GPU al LED | No se verifica con un ajuste de Video Device In TOP. | Documentación de salida, GPU, sincronizador, procesador LED y cámara. |
Sync Inputs: grupos de capturas y comportamiento ante un timeout
La misma página, Sync Inputs, describe la sincronización de varios Video Device In TOP en un sistema. Las fuentes deben estar genlocked. La documentación leída enumera Blackmagic, DataPath, Deltacast y BlueFish para esta función; no la confundas con la restricción AJA de ondemandsync.
Sync Group Index separa los grupos dentro del archivo .toe. Max Sync Offset (ms) establece cuánto pueden diferir los tiempos de llegada para considerar que las imágenes pertenecen al mismo cuadro. Sync Timeout (ms) fija la espera del grupo.
Derivative indica que, si vence el timeout esperando cuadros del grupo, todos sus nodos conservan la imagen actual, aunque algunas entradas hayan recibido imágenes nuevas. Si aparece una imagen detenida al agrupar capturas, registrá qué entradas entregan señal y si aumenta sync_timeouts. Esa observación ayuda a preparar la siguiente comparación; todavía no identifica un cable o una tarjeta averiados.
Proponemos empezar con una entrada y agregar las otras de a una, conservando señal y configuración en cada paso. Identificá qué grupo y qué cambio coinciden con la detención. Revisá los manuales de las fuentes y capturadoras para comprobar su referencia y formato; agrupar nodos no reemplaza esas verificaciones.
Info CHOP: leer conexión, tasas y contadores antes de atribuir una falla
En Specific Video Device In TOP Info Channels, Derivative explica los canales del Info CHOP asociado. connected vale 1 cuando el nodo conecta al dispositivo; eso no confirma una entrada válida. Compará ese dato con la imagen y los datos de señal que el hardware y su driver puedan informar.
signal_fps informa la tasa del formato y vale 0 si es desconocida. capture_fps cuenta los cuadros capturados en el último segundo; no lo uses como sustituto del formato seleccionado. Guardá también Signal Format, cuyo valor entrelazado se expresa en campos por segundo en la documentación del parámetro.
Tomá una lectura al comienzo y otra al final de un intervalo anotado, con el mismo contenido y configuración. Guardá ambas antes de usar Reset Stats, que reinicia las estadísticas del Info CHOP asociado. Compará el incremento de cada contador dentro de ese intervalo.
Los contadores señalan etapas diferentes. Si sube uno, conservá las tasas y la carga del proyecto antes de decidir qué cambiar. Un cuadro repetido puede ser esperado cuando la aplicación muestra más cuadros por segundo que los que recibe.
| Canal | Qué describe el fabricante | Qué registrar en el ensayo |
|---|---|---|
| connected / signal_fps | Conexión al dispositivo; tasa de señal o 0 si se desconoce. | Imagen, formato y datos disponibles del driver. |
| frames_repeated | El nodo mostró otra vez un cuadro; puede ser esperado, por ejemplo captura 30 Hz y aplicación 60 fps. | Tasas de entrada y proceso; incremento durante el intervalo. |
| frames_dropped | Cuadros capturados por la tarjeta que el hilo lector de TouchDesigner no consumió. | Incremento y configuración de captura. |
| frames_skipped | Cuadros consumidos por el hilo lector que el nodo no utilizó. | Incremento y rendimiento del proyecto. |
| sync_timeouts / last_sync_wait | Timeouts del grupo y tiempo que esperó por cuadros válidos sincronizados. | Entradas del grupo, tiempos configurados e intervalo. |
Registrar la prueba y comprobar el destino físico
Completá la ficha TouchDesigner de captura y sincronización, vacía. Anotá la entrada, el proceso y cada destino: una observación en el operador no prueba la imagen enviada al salón o la registrada por cámara.
Para el receptor de imagen, seguí la guía VENICE; sus controles conservan su modelo y versión. La guía GEN10 ayuda a registrar la referencia, y la de congreso con LED, grabación y streaming separa los destinos al preparar el procesamiento y distribución de video.
Para comprobar el recorrido completo, vinculá las lecturas de captura con una imagen o clip reconocible en cada destino. La guía de salida GPU, Video Device Out y Sync II separa los controles de salida; no trasladés el resultado de otro programa a TouchDesigner.
La captura queda negra al cambiar la notebook: registrar el formato antes de reiniciarla
Si la imagen se pierde al conmutar entre notebooks, compará primero ambas fuentes conectadas de forma fija a la misma entrada de captura. Registrá modelo de capturadora, driver, build de TouchDesigner y formato completo de cada fuente.
Antes de cambiar Active, guardá Driver, Device, Signal Format, imagen, error y lecturas de Info CHOP. Anotá el formato que informa la fuente o el dispositivo en cada posición del switch. «1080p» deja sin precisar la tasa exacta y el formato de píxel, que pueden cambiar entre las dos notebooks.
Derivative, Video In > Signal Format, define resolución, tasa y progresivo o entrelazado; en entrelazado la tasa se expresa en campos por segundo. En Specific Info Channels, rgb_input vale 1 para RGB, 0 para YUV/YCbCr y -1 si se desconoce o la biblioteca no lo admite. connection_changes tampoco está soportado en todos los dispositivos. Anotá esa falta de información en vez de convertirla en una causa.
Proponemos probar cada fuente fija primero y después la conmutación. Si las dos capturan por separado y la imagen se pierde al cambiar, conservá el registro del cambio antes de reactivar la captura. Si alguna falla también fija, revisá primero ese recorrido. Ninguno de esos resultados identifica por sí solo una falla de EDID, HDCP, cable o driver.
Usá la ficha de cambio de fuente y captura, vacía, y la guía de estados DeckLink para separar entrada de video y referencia. El ensayo debe quedar fuera de programa y terminar con comprobación en la captura y en cada destino.
| Ensayo propuesto | Datos que conservar | Cómo seguir |
|---|---|---|
| Fuente A fija | Formato informado, Signal Format, imagen y contadores. | Si ya falla, revisá esta ruta antes de la conmutación. |
| Fuente B fija | Los mismos datos y la misma entrada de captura. | Compará tasa, barrido y datos de píxel disponibles. |
| A → B y B → A | Estado justo antes y después, error y duración observada. | Guardá la falla antes de cambiar Active o configuración. |
| Recuperación | Acción realizada, formato posterior y tiempo anotado. | Comprobá contenido y continuidad; recuperar imagen no explica la causa. |
Cambio de formato en DeckLink: detección y reinicio pertenecen a la aplicación
El SDK de marzo de 2026, 2.4.6, página 25, describe detección automática para ciertos dispositivos. La aplicación comprueba BMDDeckLinkSupportsInputFormatDetection, instala IDeckLinkInputCallback y habilita la entrada con bmdVideoInputEnableFormatDetection. El apartado 2.5.10.2, página 82 exige comprobar soporte para el dispositivo y driver concretos.
VideoInputFormatChanged notifica un cambio detectado; no significa que la aplicación ya haya reconfigurado la captura. Si cambia el modo o formato de píxel, el SDK propone PauseStreams → EnableVideoInput con el modo y formato de píxel detectados → FlushStreams → StartStreams. Es una secuencia para quien integra el SDK; no es un menú de TouchDesigner ni debe ejecutarse como una orden dentro del proyecto.
Para soporte, pedí modo detectado, modo habilitado, formato de píxel, código de retorno y estado de captura a ambos lados del cambio. El build real y su biblioteca siguen pendientes.
Si necesitás que la capturadora reciba un formato acordado aunque cambie la fuente, prepará el ensayo con el scaler MD-HX. Eso requiere comprobar entrada, salida y ruta del modelo concreto; no reemplaza el diagnóstico de la captura ni confirma una transición sin cortes.
Preguntas frecuentes
¿Dónde busco Sync to Frame Input si no aparece como parámetro separado?
Buscá On-Demand, Sync to Frame Input (ondemandsync) dentro de Video In > Transfer Mode. Derivative lo limita a AJA. Si no aparece, registrá build, Driver, Device y modelo de tarjeta y cotejá su documentación antes de cambiar otro control.
¿Sync Inputs hace lo mismo que On-Demand, Sync to Frame Input?
Tienen alcances distintos. El modo AJA hace esperar al proceso por un cuadro de esa captura. Sync Inputs agrupa varios nodos de entrada y requiere fuentes con genlock; la documentación leída enumera Blackmagic, DataPath, Deltacast y BlueFish para esa función. Ninguna de esas descripciones confirma la salida física de GPU al LED.
¿Cuándo indica Derivative desactivar Real-time y usar un solo nodo?
Para On-Demand, Sync to Frame Input, la documentación indica Real-time desactivado y sólo un nodo con ese modo por proceso. También advierte que el rendimiento puede empeorar. No extiendas esa instrucción a todos los modos de captura; cotejá el equipo real y conservá la configuración inicial antes de una comparación fuera de programa.
¿Por qué pueden quedar detenidas las imágenes al agrupar entradas?
Al vencer Sync Timeout sin recibir los cuadros necesarios del grupo, todos sus nodos conservan la imagen actual. Guardá Sync Group Index, Max Sync Offset, Sync Timeout y el incremento de sync_timeouts. Probá una entrada y agregá las demás de a una; anotá cuál coincide con la detención y comprobá su señal y referencia antes de aumentar los tiempos.
¿Que aumente frames_repeated demuestra una falla de captura?
Compará primero las tasas. Derivative aclara que el contador también aumenta con repeticiones esperadas, como captura a 30 Hz y proceso a 60 fps. Los contadores no identifican por sí solos una avería. Registrá el intervalo y diferenciá frames_dropped —cuadros que no consumió el hilo lector— de frames_skipped —cuadros que el hilo leyó pero el nodo no usó—.
¿connected en 1 confirma que entra video válido a TouchDesigner?
Confirma conexión del nodo al dispositivo, según Info CHOP; no necesariamente una señal válida. Anotá imagen observada, Signal Format, signal_fps y capture_fps. signal_fps en 0 significa tasa desconocida, y capture_fps es un conteo del último segundo. Falta comprobar entrada y hardware reales, sin deducir el formato únicamente de esos valores.
¿Aumentar Sync Timeout o Max Sync Offset corrige cualquier entrada fuera de sincronía?
Los controles definen cuánto espera el grupo y qué diferencia de llegada acepta. La documentación exige fuentes con genlock; cambiar tiempos no reemplaza esa condición ni verifica una salida LED. Guardá los valores y los contadores, comprobá las entradas y compará una variable fuera de programa.
¿Qué guardo antes de usar Reset Stats en Video Device In TOP?
Anotá la configuración, la duración del intervalo y las lecturas de Info CHOP. Reset Stats reinicia las estadísticas asociadas; guardar primero las lecturas permite comparar su incremento sin perder el tramo anterior. Después del cambio, registrá una lectura nueva con el mismo intervalo y señalá los datos que el driver no informe.
¿Por qué la captura puede quedar negra al cambiar la notebook si ambas fuentes dicen 1080p?
Registrá también tasa exacta, barrido y datos de píxel disponibles. Compará cada fuente fija y después la conmutación, conservando Signal Format, imagen, error e Info CHOP. Si ambas funcionan fijas y falla el cambio, guardá ese momento antes de reiniciar. Todavía falta identificar qué etapa pierde la señal o no se adapta.
¿Cuándo conviene probar Active en Video Device In de TouchDesigner?
Active controla la captura según Derivative. Si vas a compararlo, hacelo fuera de programa y guardá los estados previo y posterior junto con tarjeta, build y formato de entrada.
¿VideoInputFormatChanged confirma que la aplicación ya está capturando el formato nuevo?
El callback notifica el cambio detectado. El SDK describe aparte el reinicio con PauseStreams, EnableVideoInput con modo y formato de píxel detectados, FlushStreams y StartStreams. Comprobá soporte por dispositivo y driver, y registrá modo detectado, modo habilitado y código de retorno. Esa secuencia corresponde a la integración de la aplicación; no es una instrucción para ejecutar en un nodo de TouchDesigner.
¿rgb_input en -1 o connection_changes sin datos prueba una falla de la tarjeta?
Derivative define -1 en rgb_input como desconocido o no soportado por la biblioteca, y advierte que connection_changes no está disponible en todos los dispositivos. Guardá esa limitación junto con imagen y formato. Esos datos ausentes no identifican una avería ni confirman que la conmutación haya sido correcta.
Fuentes y manuales
- Derivative — Video Device In TOP, página Latest consultada 12/10/2026; última edición visible 6/7/2026 16:39 y revisión 38150 identificada por enlace permanente. Video In: Transfer Mode, opciones desplegadas. Build instalado y modelo de capturadora pendientes.
- Derivative — misma página Latest, Sync Inputs, Sync Group Index, Max Sync Offset y Sync Timeout. Funciones por fabricante, sin confirmar todos los modelos de tarjetas.
- Derivative — misma página Latest, Specific Video Device In TOP Info Channels; connected, tasas, repetidos, dropped, skipped y timeouts. No pruebas ejecutadas.
- Blackmagic Design — DeckLink SDK Manual, marzo de 2026: 2.4.6 Automatic Mode Detection, p25; 2.5.10.2 VideoInputFormatChanged, p82. API genérica; disponibilidad según modelo y driver de captura.
- Derivative — Video Device In TOP Latest, revisión 38150 y edición 6/7/2026 16:39: Active, Signal Format, rgb_input y connection_changes. Página leída el 12/10/2026; build instalado pendiente.