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

Ejemplos de uso de la API

Índice

Control de mimoLive con php

Disponemos de un script PHP de ejemplo bien documentado en GitHub:
https://github.com/boinx/mimoLive-HTTP-Demo

Control de mimoLive con CURL

Para controlar mimoLive a través de HTTP puede utilizar el comando bash "curl". Para que los comandos curl funcionen necesitas encontrar el ID del documento mimoLive que quieres manipular.

Control de mimoLive con la capa de automatización

En Capa de automatización puede ejecutar algunos comandos sencillos para desencadenar acciones en mimLive mediante su API Endpoints. También dispone de un comando httpRequest() para realizar cualquier tipo de GET solicitar acciones la HTTP API es capaz de hacer.

Requisitos previos

- Abra el documento que desea manipular en mimoLive.
- Asegúrese de que el documento está en un estado finalizado para que los puntos finales de la API como Capas no cambien más. Tenga en cuenta que si elimina una capa y la añade de nuevo, esta capa tendrá un ID de capa diferente cuando hable con ella a través de la API. Sin embargo, reordenar capas o añadir variantes de capas no cambiará el ID de capa.
- Habilitar el HTTP-Servidor en las Preferencias de Control Remoto de mimoLive. Marque la opción "Permitir acceso de control remoto":

9e0a2b0b 6a64 4093 b15b 24aa12dead32

Anote el número IP o la dirección IP con el número de puerto de mimoLive para su uso posterior cuando trabaje con el HTTP API.

Obtener un API Punto final

Antes de mimoLive 5.5 era difícil obtener el ID de documento y, por ejemplo, un ID de capa con comandos de Terminal buscando a través de largas JSON datos. Desde mimoLive 5.5 es mucho más fácil:

En primer lugar, copie el archivo mimoLive HTTP base del servidor URL de la sección Control Remoto de la ventana de Preferencias de mimoLive (ver captura de pantalla anterior). Abre un editor de texto (por ejemplo, TextEdit de Apple) y pega el contenido del Portapapeles en un documento de texto recién creado. Asegúrate de que hay no barra invertida al final del URL¡! El resultado debería ser el siguiente:

http://172.28.30.202:8989

En la ventana del documento mimoLive, con el ratón, puedes hacer clic con el botón derecho (o control-clic, o dos dedos-clic) en el objeto de interés (por ejemplo, una Capa, una Fuente, un botón de un control de Capa) para obtener un menú contextual. Hay un elemento de menú que le permite copiar el archivo API Punto final al portapapeles de macOS para utilizarlo en tu mimoLive API proyecto.

bc6c7e19 e991 48a0 a9b8 b56d690f19b4

A veces es importante tratar una variante específica de la capa en lugar de la capa en general. Si hace clic con el botón derecho en el parámetro de una capa, verá que hay diferentes API para la capa activa actual o la variante de capa específica:

6120370f a575 43db 891b ef3a91d5aec5

Vuelve a tu editor de texto y pega lo que acabas de copiar API Punto final después del HTTP Base del servidor URL. Ahora el URL en su navegador de texto debería tener este aspecto:

http://172.28.30.202:8989/api/v1/documents/458706932/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B

Esta es la última API Endpoint para dirigirse a una capa de su documento. En este ejemplo 458706932 es el ID del documento y BA868701-8131-49CB-8EDD-8C7E6E7CD60B es el ID de capa específico de una capa determinada en este documento.

Conectar y OFF a Capa

Con los datos recuperados API Endpoint para una determinada capa puede activarlo y desactivarlo con los siguientes comandos de terminal.

*

Asegúrese de sustituir xxxxxxxxx por el punto final de la API del paso anterior.

curl xxxxxxxxx/setLive
curl xxxxxxxxx/setOff
curl xxxxxxxxx/toggleLive
# our example will look like this:
curl http://172.28.30.202:8989/api/v1/documents/458706932/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B/setLive
*

Las URL también funcionan en un navegador de Internet

Estas URL (sin el comando "curl") también se pueden poner en la barra de direcciones de un navegador de Internet. Al pulsar "return", el navegador llamará al servidor HTTP de mimoLive y ejecutará el comando especificado. Si tiene datos JSON que necesita enviar al punto final de la API, también puede añadirlos a la URL, consulte "Convertir un comando CURL con datos JSON en una URL HTTP para solicitudes HTTP simples" más abajo.

Modificación del valor de una capa

- Todos los parámetros de una capa pueden establecerse a través de la función HTTP API. Debe encontrar la clave correcta para establecer un nuevo valor. En nuestro ejemplo, estableceremos el Título de un archivo Lower Third Capa con la clave tvGroup_Content__Title. Como tenemos que enviar el nuevo valor en un JSON al archivo HTTP servidor con un PUT solicitar el comando curl se llena un poco.

*Asegúrese de sustituir xxxxxxxxx por su capa específica API ¡Punto final!

curl -d '{"input-values":{"tvGroup_Content__Title":"My new title"}}' -H "Content-Type: application/json" -X PUT "xxxxxxxxx"

Colección de útiles API Comandos para explorar

Ajuste del RTMP URL y Clave de Streaming de un Destino de Salida de Streaming en Directo:

curl --data '{"data": { "attributes": {"settings": {"rtmpurl":"rtmp://mystreaminghost.com", "streamingkey":"MYTOTALLYSECRETSTREAMKEY"} } } }' --request PATCH http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110

Configuración del nombre de archivo y la ruta de un destino de salida de la grabadora de archivos

curl --data '{"data": { "attributes": {"settings": { "location": "~/Destktop/Recordings", "filename": "MyGreatShow %year-%month-%day-%hour-%minute.%extension" } } } }' --request PATCH http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59EDA388BB

Configuración de la fuente de vídeo de una capa de colocación

yyyyyyyyyyy será el UUID de la fuente de vídeo. (e.g CCAF4418-367A-415F-AD25-6536C3EF3512)

xxxxxxxxxxxxx será el API punto final de la variante de capa determinada. (e.g. http://172.28.30.202:8989/api/v1/documents/2014814935/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B/variants/AA868701-8131-49CB-8EDD-8C7E6E7CD60A)

curl -d '{"input-values":{"tvIn_VideoSourceAImage":"yyyyyyyyyyyyy"}}' -H "Content-Type: application/json" -X PUT "xxxxxxxxxxxxxxxx"

Ajustar el volumen de una capa que tiene un botón de volumen de audio

Con este comando curl, puede cambiar el volumen de audio de una capa que tenga un mando de ajuste de audio (como la capa Capa de placer). El valor "volumen" puede tomar valores de 0,0 a 1,0.

xxxxxxxxxxxxx será el API punto final de la capa (por ejemplo, http://10.101.2.2:8989/api/v1/documents/13195157/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B)

curl -d '{"volume": 0.5}' -H "Content-Type: application/json" -X PUT "xxxxxxxxxxxxxxxx"

Definir el color de una capa de fondo

xxxxxxxxxxxxx será el API punto final de la variante de capa determinada. (e.g. http://172.28.30.202:8989/api/v1/documents/2014814935/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B/variants/AA868701-8131-49CB-8EDD-8C7E6E7CD60A)

curl -d '{"input-values":{"tvGroup_Appearance__Color_1":{"red": 1.0, "blue": 0.5, "green": 0, "alpha": 0.5}}}' -H "Content-Type: application/json" -X PUT "xxxxxxxxxxxxxxxx"

Borrar la ruta de archivo de una fuente de vídeo Última grabación

En su Repositorio de fuentespuede tener un Última fuente de grabación que proporcionará acceso a la última grabación que anuncie cualquier Destino de Salida de Grabación de Archivos. En una aplicación de quiosco, será necesario borrar la última ruta de grabación para que el siguiente usuario de la estación no pueda revisar la grabación del usuario anterior. Con lo siguiente Comando Capa de automatización puede borrar esta información de la Última fuente de grabación:

httpRequest(http://127.0.0.1:8989/api/v1/documents/2014814935/sources/2014814935-413AC0A3-AC43-4A7D-A228-6D0181BF1476?update=%7B%22filepath%22%3A%22%22%7D)

Almacenamiento JSON Datos del documento mimoLive

Con el endpoint "datastores" puedes almacenar cualquier tipo de datos en el documento mimoLive para que persistan durante una recarga del documento. Es necesario utilizar un "PUT" para guardar los datos y una solicitud "GET"para volver a leerlo. Usted puede almacenar cualquier tipo de datos, sin embargo en este ejemplo estamos almacenando JSON Data porque este parece ser un caso de uso muy común. Si desea almacenar datos diferentes, deberá ajustar el parámetro -H en consecuencia.

Comando Curl para almacenar datos:
bc. curl -data '{"misDatos1": 1.5, "misDatos2": "Algún texto"}' -H "Content-Type: application/json" -X PUT http://127.0.0.1:8989/api/v1/documents/1643911183/datastores/myDataStore1

Comando Curl para volver a leer los datos:
bc. curl -X GET http://127.0.0.1:8989/api/v1/documents/1643911183/datastores/myDataStore1

Actualizar la ruta del archivo fuente de un archivo multimedia

Es posible que desee cambiar la película que se reproduce o sustituir un anuncio mostrado por un Fuente del archivo multimedia. Esto puede hacerse con un comando de actualización ejecutado en la fuente API punto final.

Asegúrese de que el modo de referencia de archivos de la fuente de medios está configurado como "Ruta absoluta". Obtenga la API de esta fuente haciendo clic con el botón derecho del ratón sobre ella en la columna de la izquierda y seleccionando "Copiar el punto final de la fuente". API Endpoint to Clipboard" en el menú contextual. Cree un URL de la siguiente forma:

http://127.0.0.1:8989/api/v1/documents/<YOUR DOCUMENT ID>/sources/<SOURCE API ENDPOINT>?update={"filepath":"<LOCAL FILE PATH>"}

Asegúrese de codificar el JSON datos en el URL para obtener un URL que se puede utilizar en un comando curl como este:

curl -X GET http://127.0.0.1:8989/api/v1/documents/1748069974/sources/1748069974-334DA2E4-DFF3-4225-8F4A-D09D40A6BD5D?update=%7B%22filepath%22:%22~/Desktop/Screen%20Recording%202022-07-27%20at%2012.18.23.mov%22%7D

*Tenga en cuenta que puede utilizar "~" al principio de la ruta del archivo para hacer referencia al directorio personal del usuario actual.

Control de mimoLive con Apple Script

Actualmente mimoLive no soporta Apple Script de forma nativa. Sin embargo, puede utilizar una solución alternativa para llegar a mimoLive: Hay un comando "do shell script" en apple script que te permite ejecutar comandos bash como "curl". La sección anterior explica cómo crear un comando curl para manipular una determinada capa o valor de capa.

Una vez que esté satisfecho con su comando curl necesita envolverlo en un comando "do shell script" en Apple Script:

*Errores en Apple Script
En Apple Script hay dos escollos cuando se lleva un comando de terminal como "curl" al comando do shell script:
1. Todos los " deben ir precedidos de un \ para que el analizador sintáctico de Apple-Script sepa que no son los marcadores finales del comando do shell script. El \ es un carácter de escape para indicar al analizador que ignore el carácter siguiente.
2. Si concatena múltiples partes de texto con & entonces esto es una "lista de texto" para Apple Script en lugar de un único texto. El comando do shell no funcionará con "lista de texto" y por lo tanto necesita convertirlo de nuevo a un solo texto con el "as text" al final de su comando curl.

Este ejemplo muestra cómo establecer el título de un tercio inferior:

*Asegúrese de sustituir xxxxxxxxx por su capa específica API ¡Punto final!

set layerAPIEndpoint to "xxxxxxxxx" -- in our example this would be "http://172.28.30.202:8989/api/v1/documents/458706932/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B"
set lowerThirdTitle to "Hello World!"
do shell script "curl -d '{\"input-values\":{\"tvGroup_Content__Title\":\"" &amp; lowerThirdTitle &amp; "\"}}' -H \"Content-Type: application/json\" -X PUT \"" &amp; layerAPIEndpoint &amp; "\"" as text

El siguiente ejemplo de script de Apple muestra cómo activar una capa cada media hora: Esto puede ser útil para superposiciones comerciales. Asegúrese de utilizar una capa que se apague sola después de un cierto tiempo (por ejemplo, una capa de colocación con una fuente de película no en bucle lo hará).

*Asegúrese de sustituir xxxxxxxxx por su capa específica API ¡Punto final!

-- configure your Layer API Endpoint:
set layerAPIEndpoint to "xxxxxxxxx" -- in our example this would be "http://172.28.30.202:8989/api/v1/documents/458706932/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B"
-- repeat endlessly:
repeat
	-- get the seconds last in this hour
	set currentDate to current date
	set secondsToNextHour to 3600 - ((minutes of currentDate) * 60 + (seconds of currentDate))
	-- --------------------------------------------
	-- The following code snippet is useful only if you want to
	-- switch the layer live on half hours also.
	-- if you don't want this behaviour you can delete this part.
	-- --------------------------------------------
	-- check if we are currently in the first half of the hour
	if secondsToNextHour &gt; 1800 then
		-- yes, we are in the first half of the hour, so only wait half the time
		set secondsToNextHour to secondsToNextHour - 1800
	end if
	-- --------------------------------------------
	-- wait until the time to trigger the layer
	delay secondsToNextHour
	-- set the specified layer to live:
	do shell script "curl \"" &amp; layerAPIEndpoint &amp; "/setLive\"" as text
	-- wait a couple of seconds to make sure we don't glitch in time
	delay 5
end repeat

Conversión de un CURL con JSON Datos A un HTTP URL por simple HTTP Solicitudes

A veces sólo es posible enviar un simple HTTP a mimoLive en lugar de utilizar un comando curl, por ejemplo, en el caso de aplicaciones de automatización de terceros o de la propia capa de automatización mimoLive. Para ello, es necesario convertir el bloque de datos del comando curl para que forme parte del archivo URL. Puede hacerlo de la siguiente manera:

Supongamos que tenemos el siguiente comando curl:

curl --data '{"data": { "attributes": {"settings": {"rtmpurl":"rtmp://mystreaminghost.com", "streamingkey":"MYTOTALLYSECRETSTREAMKEY"} } } }' --request PATCH http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110

Usted tomaría el HTTP pieza primero:

http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110

Añadir ?update= a ella:

http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110?update=

Obtenga toda la -cadena de datos y elimine todos los espacios innecesarios:

{"data":{"attributes":{"settings":{"rtmpurl":"rtmp://mystreaminghost.com","streamingkey":"MYTOTALLYSECRETSTREAMKEY"}}}}

Codifica esto en su URL forma por escape de los caracteres no conformes con URL (por ejemplo, utilizando https://www.urlencoder.org/)

%7B%22data%22%3A%7B%22attributes%22%3A%7B%22settings%22%3A%7B%22rtmpurl%22%3A%22rtmp%3A%2F%2Fmystreaminghost.com%22%2C%22streamingkey%22%3A%22MYTOTALLYSECRETSTREAMKEY%22%7D%7D%7D%7D

Por último, ponga todo esto después de la actualización así:

http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110?update=%7B%22data%22%3A%7B%22attributes%22%3A%7B%22settings%22%3A%7B%22rtmpurl%22%3A%22rtmp%3A%2F%2Fmystreaminghost.com%22%2C%22streamingkey%22%3A%22MYTOTALLYSECRETSTREAMKEY%22%7D%7D%7D%7D

Ahora puede utilizar este URL en un simple HTTP 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