Syphon, Spout y NDI

Syphon (Mac), Spout (PC) y NDI (tanto Mac como PC) son unas herramientas muy útiles para rutar la salida visual de un programa a otro. 

Syphon/Spout

Syphon y Spout funcionan en el mismo ordenador. La salida de una aplicación puede ser recibida por otra. De esta forma, por ejemplo puede crear sketches totalmente funkys con un programa como Processing, pero aplicar efectos y mapearlos a una superficie con Resolume Arena.

No existe a priori ninguna limitación acerca de cuántas aplicaciones puede conectar de esta forma. ¡Simplemente en un momento determinado su ordenador empezará a echar humo y listo!.

NDI

NDI funciona sobre la red. De esta forma puede enviar la salida de Resolume que está funcionando en un ordenador a un Resolume que funcione en otro ordenador diferente, sin la necesidad de hardware extra. Simplemente necesitará una conexión de red normal.

Usando NDI, puede enviar video desde un Mac a un PC y al revés, sin problema. Al igual que ocurre con Syphon y Spout, no hay límite en lo relativo a cuántas conexiones puede establecer, pero evidentemente el ancho de banda de su red tendrá algo que decir al respecto.

Entrada

La entrada Syphon, Spout y NDI siempre están activas en Resolume.

Cualquier programa que esté enviado su salida aparecerá debajo de la pestaña de fuente. Puede añadirlos a un deck tal como haría con cualquier otra entrada activa.

Puede usar a la vez tantas entradas como quiera.

Salida

En el momento en que Syphon, Spout y/o NDI sean activados a través del menú de salida, Resolume comenzará a emitir (broadcast) de inmediato los datos a través de su salida principal.

Otras aplicaciones que tengan activado Syphon/Spout en ese ordenador recibirán la salida de composición del Resolume.

Los ordenadores que estén en la misma red recibirán la salida de la composición del Resolume vía NDI.

Para aquellas aplicaciones que no detecten de forma automática los servidores de difusión Syphon/Spout, la salida principal de Resolume se auto-identificará de la siguiente forma:

Nombre de app: "Avenue" o "Arena".

Nombre de servidor: "Composition" (para la salida de la composición principal) o “Screen 1” (cuando use la salida avanzada para rutar una pantalla).

Detalles del NDI

Adaptador de red

El protocolo NDI no tiene actualmente ninguna forma de elegir qué interface de red usa para enviar los datos. Como consecuencia de ello, usará su Wifi cuando tenga activas tanto conexiones inalámbricas como con cable. Especialmente en OSX, siempre usará por defecto Wifi cuando haya una disponible. 

Como se puede imaginar, el envío de video vía Wifi es bastante penoso. Por ello, desactive su conexión inalámbrica cuando envíe datos NDI.

Descubrimiento vs Conexión

Otro punto a tener en cuenta es que el protocolo NDI es famoso por detectar más fuentes de a las que realmente esté conectado. 

Por ejemplo, un ordenador enviando datos NDI puede estar en un rango IP diferente del de su ordenador, pero aún así pueden estar conectado a la misma red. Esto dará lugar a una situación extraña en la que el emisor NDI aparecerá en las fuentes Sources, pero aparecerá con una resolución 0x0 y Offline cuando lo use como un clip.

Para evitar esto le interesará asegurarse de que todos sus ordenadores NDI estén en el mismo rango de IP y máscara de subred.

Salida avanzada

Resolume Arena le ofrece un mayor control de todo esto a través de la salida avanzada. Las salidas Syphon, Spout y NDI pueden ser tratadas como una pantalla física independiente. 

Esto le permite deformar la salida antes de enviarla o elegir partes de su composición antes del envío. Aún así, podrá enviar una salida diferente a sus pantallas físicas.

Cuando envíe datos a Syphon/Spout podrá cambiar la anchura y altura de la salida como le interese.


Código de ejemplo en Syphon

Código de ejemplo para Processing:

Para Arena:

client = new SyphonClient(this, "Arena", "Composition"); 

O para Avenue:

client = new SyphonClient(this, "Avenue", "Composition");

Si usa una salida Syphon a través de la salida avanzada del Arena, podrá asignar usted mismo un nombre al servidor:

client = new SyphonClient(this, "Arena", "Screen 1"); 

Artículos relacionados