mimoLive® - Manual del usuario

Selectores genéricos
Sólo coincidencias exactas
Buscar en el título
Buscar en el contenido
Selectores de tipo de entrada

Manual - Índice

Automatización

Índice

Optimice su producción con la capa de automatización de mimoLive

La capa de Automatización de mimoLive se desarrolló originalmente como una prueba de concepto, pero desde entonces ha demostrado ser una herramienta increíblemente útil para los usuarios. Esta capa puede utilizarse para automatizar la activación y desactivación de capas en una secuencia específica o en momentos predeterminados.

Esto puede ser especialmente útil para crear producciones complejas con múltiples capas y entradas, ya que elimina la necesidad de conmutación y sincronización manuales. Con la capa de automatización, los usuarios pueden centrarse en crear contenidos atractivos y dejar que el software se encargue de la sincronización y secuenciación de su producción.

Ejemplo: Capa de automatización

Automatización

Advertencia: Los scripts de automatización en mimoLive no se ejecutan en tiempo real

Tenga en cuenta que la sincronización de los scripts de automatización en mimoLive puede no ser exacta debido a la naturaleza asíncrona de las solicitudes HTTP llamadas por el motor de renderización de vídeo. Estas secuencias de comandos dependen de las solicitudes HTTP a la API y la duración de estas solicitudes no se puede determinar con precisión, lo que resulta en posibles discrepancias de tiempo. Por favor, tenga esto en cuenta cuando utilice scripts de automatización en su flujo de trabajo de producción.

Requisito previo

Para que esta capa funcione es necesario activar la capa HTTP Servidor en mimoLive para activar el Control Remoto API. Ir a mimoLive -> Preferencias -> Mandos a distancia: Marque la opción "Permitir acceso de control remoto". (Actualmente sólo funciona sin contraseña).

6102d04e 4eb3 4600 b410 0d2b2aef0767

Configurar la capa de automatización

Hay dos opciones sobre cómo debe comportarse la capa después de ser activada:

OpciónComportarse
Apagado automático de la capaPara esta opción sólo hay un script disponible. Una vez procesado este script, la capa se apagará sola. Esta opción puede utilizarse cuando una secuencia debe ejecutarse una sola vez.
Apagar la capa manualmente (por ejemplo, por el operario)En este caso hay tres scripts disponibles. Cuando la capa se activa, se procesa el script "On Live". Una vez hecho esto, el script "While Live" se procesa en un bucle sin fin. Cuando la capa se apaga, se procesa el script "Apagado".
Si no necesita una fase determinada, puede dejar vacía la secuencia de comandos asociada.

Comentarios sobre el código fuente

Para ayudarle a recordar la función de su script, le recomendamos que utilice comentarios en el mismo:

// Now sleep for 5 seconds
sleep(5)
// Start the stopwatch layer:
layerOn(7C4665C4-0E17-4F63-BCFF-B59D68D75956)

!Los comentarios deben ir en una línea separada y el // debe ir al principio de esa línea.

Comandos de secuencias de comandos

El lenguaje de scripting es propietario y sólo tiene una vista de comandos.

capaOn(API ID de capa)

Este comando permite activar una capa o una variante de capa.

// switching on a layer by its id
layerOn(234674-se5634-2w435456)
// switching on a layer variant by its id
layerOn(4E38A868-DCB5-4E9C-AC75-231764229BFA/variants/5F18C566-F59F-45B4-8D40-27EF289D47B1)
// switching on a layer by its long API Endpoint URL
layerOn(/api/v1/documents/863743527/layers/68F63C8F-2376-4CA3-9764-CC17CBFC5F8D)
// switching on a layer with a defined variable
setVariable($myLayerID, "234674-se5634-2w435456")
layerOn($myLayerID)

capaOff(API ID de capa)

Este comando permite desactivar una capa o una variante de capa. Este comando permite desactivar una capa o una variante de capa.

// switching off a layer by its id
layerOff(234674-se5634-2w435456)
// switching off a layer variant by its id
layerOff(4E38A868-DCB5-4E9C-AC75-231764229BFA/variants/5F18C566-F59F-45B4-8D40-27EF289D47B1)
// switching off a layer by its long API Endpoint URL
layerOff(/api/v1/documents/863743527/layers/68F63C8F-2376-4CA3-9764-CC17CBFC5F8D)
// switching off a layer with a defined variable
setVariable($myLayerID, "234674-se5634-2w435456")
layerOff($myLayerID)

layerSetRecall(API ID del conjunto de capas)

Este comando se puede utilizar para activar la recuperación de un determinado Conjuntos de capas.

// recall a Layer Set by its id
layerSetRecall(E6950B7A-7457-44C5-81F7-972D9B04DBC3)
// recall a Layer Set by its long API Endpoint URL
layerSetRecall(/api/v1/documents/863743527/layer-sets/E6950B7A-7457-44C5-81F7-972D9B04DBC3)
// recall a Layer Set with a defined variable
setVariable($myLayerSetID, "E6950B7A-7457-44C5-81F7-972D9B04DBC3")
layerSetRecall($myLayerSetID)

salidaOn(API ID de destino de salida)

Utilice este comando para activar un destino de salida.

salidaOff(API ID de destino de salida)

Utilice este comando para desactivar un destino de salida.

dormir(Segundos)

El comando sleep() pausará el cálculo del script durante los segundos dados.

// pause the script computation for 12 seconds
sleep(12)
// pause the script computation for 35.6 seconds
sleep(35.6)
// pause the script computation for a time interval specified by a variable
setVariable($mySleepInterval, 17)
sleep($mySleepInterval)

dormirHasta(HH:MM:SS (24h))

El comando sleepUntil() permitirá que el script haga una pausa hasta que se alcance el tiempo especificado. si el tiempo ya ha pasado el script esperará hasta el día siguiente.

// sleep until 5:15pm
sleepUntil(17:15:00)
// sleep until 9:12am
sleepUntil(9:12)
// sleep until a time specified by a variable
setVariable($myWakeUpTime, "9:41")
sleepUntil($myWakeUpTime)

dormirEnElMinuto(1|2|3|4|5|6|10|12|15|20|30|60|90|120 …)

Este comando de script pausará el script hasta que se alcance la siguiente fricción "al minuto" de una hora.

// go on every 20 minutes: on the hour, 20 and 40 minutes past the hour:
sleepOnTheMinute(20)
// go on "on the hour"
sleepOnTheMinute(60)
// go on every 10 minutes past the hour (specified by a variable)
setVariable($myWakeUpMinute, "10")
sleepOnTheMinute($myWakeUpMinute)

setVariable($variableName, valor)

Para definir una variable local utilice el comando setVariable. Debe especificar un nombre de variable (con un postfijo $) y el valor que debe tener esta variable. El valor puede ser un número, un texto (entre comillas) o los valores booleanos "true" y "false". Puede utilizar la variable en todos los campos de los demás comandos.

setVariable($myText, "This is a text")
setVariable($myNumber, 15.73)
setVariable($myBoolValue, false)

setGlobal($variableName, valor)

Una variable global se puede utilizar en la capa actual, o en todas las capas de Automatización por encima de esta capa. Esto es muy útil si desea tener la misma información en todas las capas de Automatización (por ejemplo, la capa API ID de una capa determinada). Para el valor de la variable se aplica lo mismo que en el comando setVariable descrito.

Tenga en cuenta que las variables globales son válidas para otras capas de Automatización siempre que la propia capa esté activa. De esta forma puede cambiar las variables globales cambiando a una capa diferente con diferentes definiciones de variables globales.

setGlobal($myGlobalText, "This is a text")
setGlobal($myGlobalNumber, 15.73)
setGlobal($myGlobalBoolValue, false)

ifLayerIsOn() - ifLayerIsOff() [else] endif

Estas sentencias if comprueban si una determinada capa está activa o no, en cuyo caso se procesan los siguientes comandos. De lo contrario, los siguientes comandos se omiten hasta que se encuentra un else o endif.

setVariable($myLayerA, "D6A326CA-72E6-45E5-836D-9795F8F534F4")
setVariable($myLayerB, "8C58DEA7-CCBE-44CB-A60F-97C5BD456C68")


ifLayerIsOn($myLayerA)
	// the layer is live, switch it off
  layerOff($myLayerA)

else
	// the layer is currently off, switch it on
  layerOn($myLayerA)

endif

ifLayerIsOff($myLayerB)

	// the layer is currently off, switch it on
  layerOn($myLayerB)

endif

ifLayerSetIsActive() - ifLayerSetIsInactive() [else] endif

Estas sentencias if comprueban si un determinado Conjunto de capas Si es así, se procesan los siguientes comandos. En caso contrario, se omiten los siguientes comandos hasta que se encuentra un else o endif.

setVariable($myLayerSetA, "CEF07AFA-B552-40F8-821C-CF424EB93500")
setVariable($myLayerSetB, "E4B15B8B-EE34-4CCE-BDE7-58120A65E83A")
setVariable($myLayer, "8C58DEA7-CCBE-44CB-A60F-97C5BD456C68")


ifLayerSetIsActive($myLayerSetA)
	// the layer set A is active, switch layer on
  layerOn($myLayer)

else
	// the layer set A is currently inactive, switch the layer off
  layerOff($myLayer)

endif

ifLayerSetIsInactive($myLayerSetB)

	// the layer set B is currently inactive, switch the layer off
  layerOn($myLayer)

endif

ifLayerData(, , , )

Este complejo comando le permite probar en capa cualquier parámetro que el HTTP API proporciona. Es necesario especificar una capa por su API ID, la ruta clave dentro del JSON datos el HTTP API devuelve, un comparador (¡entre comillas como cadena!) (por ejemplo, "==") y un valor.

Los valores válidos del comparador son:

"=="es igual a
"!="no es igual a
">"superior a
"<"menos de
">="mayor o igual que
"<="menos o qual que
// Example: Testing if the audio volume is turned up on a layer

setVariable($myLayerA, "D6A326CA-72E6-45E5-836D-9795F8F534F4")
setVariable($myLayerB, "8C58DEA7-CCBE-44CB-A60F-97C5BD456C68")

ifLayerData($myLayerA,"data.attributes.volume",">",0.5)
	// The audio volume is bigger than 0.5 so turn layer B on
	layerOn($myLayerB)

else
	// The volume is lower than 0.5, lets turn layer B off
	layerOff($myLayerB)

endif

loop() [break] endloop

El comando bucle permite ejecutar un determinado código varias veces. Si no se especifican las iteraciones, el bucle se ejecutará sin fin. El comando break te permite salir del bucle en cualquier momento. endloop es necesario al final del bloque de comandos que debe ser ejecutado en bucle.

setVariable($myLayerA, "D6A326CA-72E6-45E5-836D-9795F8F534F4")

// blink layer A 4 times
loop(4)
	layerOn(setVariable(myLayerA)
  sleep(1)
	layerOff(setVariable(myLayerA)
  sleep(1)
endloop

// wait for volume of layer A will be bigger than 0.5
loop

	ifLayerData($myLayerA,"data.attributes.volume",">",0.5)
		// The audio volume is bigger than 0.5 exit the loop now
		break
	endif

	sleep(1)
endloop

httpRequest()

El httpRequest() le da mucha flexibilidad en lo que a desencadenar con este script. Incluso en otros documentos o scripts remotos. Por favor, lea la HTTP API documentación para todos API llamadas posibles.

Tipos de datos

API Puntos finales

El parámetro debe ser un API Endpoint para una capa, una variante de capa o un conjunto de capas, puede acceder a ellos. API Endpoints haciendo clic con el botón derecho del ratón sobre el objeto en el documento mimoLive. Aparecerá un menú contextual con la opción "Copiar API Punto final".

Esto copiará el API Endpoint para este objeto al tablero pasado. Si lo pega en algún lugar se verá algo como esto:

/api/v1/documents/863743527/layers/D6A326CA-72E6-45E5-836D-9795F8F534F4

/api/v1/documents/863743527/layers/68F63C8F-2376-4CA3-9764-CC17CBFC5F8D/variants/3FF72CC3-AF80-4252-A879-F8AFD68DB922

/api/v1/documents/863743527/layer-sets/E6950B7A-7457-44C5-81F7-972D9B04DBC3

Puede reducir el API Endpoints sólo a la última parte. Esto hará que su script más corto como se muestra aquí:

// switching on a layer:
layerOn(/api/v1/documents/863743527/layers/D6A326CA-72E6-45E5-836D-9795F8F534F4)
// OR
layerOn(D6A326CA-72E6-45E5-836D-9795F8F534F4)

// switching on a variant:
layerOn(/api/v1/documents/863743527/layers/68F63C8F-2376-4CA3-9764-CC17CBFC5F8D/variants/3FF72CC3-AF80-4252-A879-F8AFD68DB922)
// OR
layerOn(68F63C8F-2376-4CA3-9764-CC17CBFC5F8D/variants/3FF72CC3-AF80-4252-A879-F8AFD68DB922)

 

Este parámetro representa una hora en representación de 24 horas. Horas, minutos y segundos delimitados por ":".

Ideas para guiones

Publique un anuncio cada 10 minutos

En combinación con un "PIP Ventana" y una "Fuente de lista de reproducción multimedia" que contenga varios clips cortos de películas publicitarias, puede reproducir una publicidad cada 10 minutos. Asegúrese de desmarcar la opción "Non-Stop" en la fuente Media Playlist. De este modo, cada vez que se reproduzca la PIP Window se pone en directo, reproducirá un anuncio de la fuente Playlist y se apagará. Transcurridos 10 minutos, se reproducirá el siguiente anuncio.

Ejecuta un aguijón antes de cambiar a una capa determinada

Necesitas preparar un video stinger corto que tendrá un In-transition hasta que cubra toda la pantalla (por ejemplo después de 1 seg). Después de 1 segundo cambia en vivo la capa que quieres revelar. Coloca esta capa debajo de la capa que está reproduciendo el vídeo. Ahora que el vídeo stinger está cubriendo la pantalla, el cambio de la capa de abajo no se puede ver. El vídeo stinger debería continuar revelando la capa de abajo. Por favor, asegúrese de que el vídeo stinger se renderiza en códec de vídeo ProRes4444 para que lleve consigo la transparencia necesaria para la transición.

Crear un inicio de espectáculo complejo

Como puedes activar y desactivar las capas una tras otra durante un período de tiempo más largo, puedes tener varias capas de texto o anotación, una capa de ubicación que muestre gráficos o incluso tercios inferiores que llenen la pantalla para crear tu propio inicio de espectáculo animado. ¡Da rienda suelta a tu creatividad!

Activar un mando a distancia HTTP URL mediante un toque en la superficie del mando a distancia

Si necesita activar un HTTP Solicitar mediante un botón en su Superficie de control remoto puede añadir una capa de Automatización a su pila de capas y establecer la opción "Desactivar capa" de esa capa en "Automáticamente". Ahora puede poner un único comando httpRequest() en el campo de script "On Live". En su Superficie de Control Remoto añada el botón En Directo de esta capa al diseño. Una vez que pulse este botón en su Superficie de Control Remoto, el comando HTTP se realizará la solicitud.

Su opinión

¿Cómo calificaría su experiencia con esta función de mimoLive?

Última actualización de las páginas del manual

Boletín electrónico

Español

Únase a la demostración en directo 24/7 de Zoom

*requerido

Es necesario cargar contenido de reCAPTCHA para enviar el formulario. Ten en cuenta que al hacerlo compartirás datos con terceros proveedores.

Más información