mimoLive® - Manuel de l'utilisateur

Sélecteurs génériques
Correspondance exacte uniquement
Recherche dans le titre
Recherche dans le contenu
Sélecteurs de type de message

Manuel - Table des matières

Automatisation

Table des matières

Rationalisez votre production avec la couche d'automatisation de mimoLive

La couche d'automatisation de mimoLive a été développée à l'origine comme une preuve de concept, mais elle s'est révélée être un outil incroyablement utile pour les utilisateurs. Cette couche peut être utilisée pour automatiser l'activation et la désactivation des couches dans une séquence spécifique ou à des moments prédéterminés.

Cela peut s'avérer particulièrement utile pour créer des productions complexes avec plusieurs couches et entrées, car cela élimine le besoin de commutation et de synchronisation manuelles. Grâce à la couche d'automatisation, les utilisateurs peuvent se concentrer sur la création de contenus attrayants et laisser le logiciel s'occuper de la synchronisation et du séquençage de leur production.

Exemple : Couche d'automatisation

Automatisation

Avertissement : Les scripts d'automatisation dans mimoLive ne s'exécutent pas en temps réel

Veuillez noter que la synchronisation des scripts d'automatisation dans mimoLive peut ne pas être exacte en raison de la nature asynchrone des requêtes HTTP appelées par le moteur de rendu vidéo. Ces scripts reposent sur des requêtes HTTP à l'API et la durée de ces requêtes ne peut pas être déterminée avec précision, ce qui peut entraîner des écarts de synchronisation. Gardez cela à l'esprit lorsque vous utilisez des scripts d'automatisation dans votre flux de production.

Prérequis

Pour que ce calque fonctionne, vous devez activer la fonction HTTP dans mimoLive pour activer le contrôle à distance. API. Aller à mimoLive -> Préférences -> Télécommandes: Cochez l'option "Autoriser l'accès au contrôle à distance". (Actuellement, il ne fonctionne que sans mot de passe)

6102d04e 4eb3 4600 b410 0d2b2aef0767

Mise en place de la couche d'automatisation

Il y a deux options sur la façon dont la couche doit se comporter après avoir été commutée en direct :

OptionComportement
Désactivation automatique de la couchePour cette option, il n'y a qu'un seul script disponible. Une fois ce script traité, le calque s'éteint de lui-même. Cette option peut être utilisée lorsqu'une séquence ne doit être exécutée qu'une seule fois.
Éteindre le calque manuellement (par exemple, par l'opérateur)Dans ce cas, trois scripts sont disponibles. Lorsque le calque est mis en ligne, le script "On Live" est traité. Une fois que cela est fait, le script "While Live" est traité dans une boucle sans fin. Lorsque la couche est désactivée, le script "Turned Off" est traité.
Si vous n'avez pas besoin d'une certaine phase, vous pouvez laisser le script associé vide.

Code source Commentaires

Pour vous aider à vous souvenir de la fonction de votre script, nous vous recommandons d'utiliser des commentaires dans votre script :

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

!Les commentaires doivent figurer sur une ligne distincte et le // doit être placé au début de cette ligne.

Commandes de script

Le langage de script est propriétaire et ne comporte que quelques commandes.

layerOn(API ID de la couche)

Cette commande permet d'activer un calque ou une variante de calque.

// 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)

layerOff(API ID de la couche)

Cette commande vous permet de désactiver un calque ou une variante de calque. Cette commande vous permet de désactiver un calque ou une variante de calque.

// 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 de l'ensemble de couches)

Cette commande peut être utilisée pour déclencher le rappel d'un certain nombre d'éléments. Jeux de couches.

// 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)

outputOn(API ID de la destination de sortie)

Cette commande permet d'activer une destination de sortie.

outputOff(API ID de la destination de sortie)

Utilisez cette commande pour désactiver une destination de sortie.

dormir(Secondes)

La commande sleep() interrompt le calcul du script pendant les secondes indiquées.

// 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)

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

La commande sleepUntil() permet au script de se mettre en pause jusqu'à ce que l'heure spécifiée soit atteinte. Si l'heure est déjà passée, le script attendra jusqu'au jour suivant.

// 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)

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

Cette commande de script mettra le script en pause jusqu'à ce que la prochaine friction "à la minute" d'une heure soit atteinte.

// 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, valeur)

Pour définir une variable locale, utilisez la commande setVariable. Vous devez spécifier un nom de variable (avec un postfixe $) et la valeur que cette variable doit avoir. La valeur peut être un nombre, un texte (entre guillemets) ou les valeurs booléennes "true" et "false". Vous pouvez utiliser la variable dans tous les champs des autres commandes.

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

setGlobal($variableName, valeur)

Une variable globale peut être utilisée dans la couche courante ou dans toutes les couches d'automatisation situées au-dessus de cette couche. Ceci est très utile si vous voulez avoir la même information dans tous les calques d'automatisation (par exemple, le calque API ID d'une certaine couche). Pour la valeur de la variable, les mêmes règles s'appliquent que pour la commande setVariable décrite.

Veuillez noter que les variables globales sont valables pour d'autres couches d'automatisation tant que la couche est active. De cette façon, vous pouvez changer de variables globales en passant à une couche différente avec des définitions de variables globales différentes.

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

ifLayerIsOn() - ifLayerIsOff() [else] endif

Ces instructions if testent si une certaine couche est actuellement active ou non. Si c'est le cas, les commandes suivantes sont traitées. Sinon, les commandes suivantes sont ignorées jusqu'à ce qu'un else ou un endif soit trouvé.

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

Ces instructions "if" testent si une certaine Jeu de couches Si c'est le cas, les commandes suivantes sont traitées. Sinon, les commandes suivantes sont ignorées jusqu'à ce qu'un else ou un endif soit trouvé.

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( , , , )

Cette commande complexe vous permet de tester sur la couche n'importe quel paramètre que la commande HTTP API fournit. Vous devez spécifier une couche par son API ID, le chemin d'accès à l'intérieur du JSON données les HTTP API renvoie un comparateur (entre guillemets comme une chaîne !) (par exemple "==") et une valeur.

Les valeurs valables du comparateur sont les suivantes :

"=="équivaut
"!="n'est pas égal
">"supérieur à
"<"moins de
">="supérieur ou égal à
"<="inférieur ou égal à
// 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

La commande loop vous permet d'exécuter un certain code plusieurs fois. Si vous ne précisez pas le nombre d'itérations, la boucle s'exécutera sans fin. La commande break vous permet de sortir de la boucle à tout moment. endloop est nécessaire à la fin du bloc de commande qui doit être bouclé.

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()

La fonction httpRequest() vous offre une grande flexibilité sur ce que vous pouvez déclencher avec ce script. Même dans d'autres documents ou dans des scripts distants. Veuillez lire la section HTTP API la documentation pour tous API appels possibles.

Types de données

API Points finaux

Le paramètre doit être un API pour un calque, une variante de calque ou un ensemble de calques, vous pouvez obtenir ces informations. API en cliquant avec le bouton droit de la souris sur l'objet dans le document mimoLive. Un menu contextuel devrait apparaître avec une option "Copier API Point de terminaison".

Cette opération permet de copier le API Point d'arrivée de cet objet dans le tableau passé. Si vous le collez quelque part, il ressemblera à ceci :

/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

Vous pouvez réduire la API Les points de terminaison de la dernière partie seulement. Votre script sera ainsi plus court, comme le montre l'illustration ci-dessous :

// 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)

 

Ce paramètre représente un temps en 24 heures. Les heures, minutes et secondes sont délimitées par des " :".

Idées de script

Diffuser une annonce toutes les 10 minutes

En combinaison avec un "PIP Window" et une "Media Playlist source" contenant plusieurs courts clips publicitaires, vous pouvez lire une publicité toutes les 10 minutes. Veillez à décocher l'option "Non-Stop" dans la source Media Playlist. Ainsi, chaque fois que la PIP Si la fenêtre est réglée sur "live", elle lira une publicité à partir de la source de la liste de lecture et s'éteindra d'elle-même. Au bout de 10 minutes, la publicité suivante est diffusée.

Lancez un stinger avant de passer à une certaine couche.

Vous devez préparer une courte vidéo d'introduction qui aura une transition vers l'intérieur jusqu'à ce qu'elle couvre tout l'écran (par exemple, après 1 seconde). Au bout d'une seconde, vous passez en direct le calque que vous souhaitez révéler. Placez ce calque sous le calque qui lit la vidéo stinger. Maintenant que la vidéo stinger couvre l'écran, la commutation du calque situé en dessous n'est plus visible. La vidéo stinger doit continuer à révéler le calque du dessous. Veillez à ce que la vidéo stinger soit rendue avec le codec vidéo ProRes4444 afin qu'elle comporte la transparence nécessaire à la transition.

Créer une ouverture de spectacle complexe

Comme vous pouvez activer et désactiver les calques les uns après les autres sur une longue période, vous pouvez avoir plusieurs calques de texte ou d'annotation, un calque d'insertion affichant des graphiques ou même des tiers inférieurs qui remplissent l'écran pour créer votre propre ouverture de spectacle animée. Soyez créatif !

Déclencher une télécommande HTTP URL en tapant sur la surface de la télécommande

Si vous devez déclencher un HTTP Demande par un bouton sur votre Surface de contrôle à distance vous pouvez ajouter un calque d'automatisation à votre pile de calques et régler l'option "Désactiver le calque" de ce calque sur "Automatiquement". Vous pouvez maintenant insérer une seule commande httpRequest() dans le champ de script "On Live". Sur votre surface de contrôle à distance, ajoutez le bouton Live de ce calque à la mise en page. Une fois que vous aurez appuyé sur ce bouton sur votre surface de contrôle à distance, la commande HTTP sera effectuée.

Votre avis

Comment évaluez-vous votre expérience avec cette fonction de mimoLive ?

Dernière mise à jour Pages du manuel

Bulletin d'information par courriel

Français

Participez à la démonstration Live Zoom® 24/7

*obligatoire

Vous devez charger le contenu de {{nom}} pour soumettre le formulaire. Veuillez noter que ce faisant, des données seront partagées avec des providers tiers.

Plus d'informations