前提条件
- 操作したいドキュメントをmimoLiveで開きます。
- レイヤーなどのAPIエンドポイントが変更されないように、ドキュメントが終了した状態であることを確認してください。レイヤーを削除して再度追加した場合、API 経由でレイヤーと通信する際に、このレイヤーは異なるレイヤー ID を持つことに注意してください。ただし、レイヤーの順序を入れ替えたり、レイヤーのバリアントを追加しても、レイヤー ID は変わりません。
- を有効にする。 HTTP-mimoLiveリモートコントロール環境設定の「サーバー」をクリックします。リモートコントロールアクセスを許可する」にチェックを入れます:

で作業する際に使用するため、IP番号またはIPアドレスとmimoLiveのポート番号を控えておいてください。 HTTP エーピーアイ.
mimoLiveを遠隔操作する方法
リモコンサーフェスでmimoLiveをコントロール
最も効果的な方法は、mimoLiveドキュメントのカスタムリモートコントロールサーフェスを作成することです。
phpでmimoLiveをコントロールする
GitHubにPHPスクリプトのサンプルがあります:
https://github.com/boinx/mimoLive-HTTP-デモ
でmimoLiveを制御する カール
mimoLiveをコントロールするには HTTP を使用するには、bashコマンド "curl "を使用します。curlコマンドを使用するには、操作したいmimoLiveドキュメントのIDを見つける必要があります。
オートメーションレイヤーでmimoLiveを制御する
があります。 オートメーション層 のアクションをトリガーする簡単なコマンドを実行することができます。 エーピーアイ エンドポイント。また、httpRequest() コマンドも用意されている。 ゲット リクエストアクション HTTP エーピーアイ は可能だ。
アップルスクリプトでmimoLiveをコントロールする
現在、mimoLiveはApple Scriptをネイティブサポートしていません。しかし、あなたはmimoLiveに到達するための回避策を使用することができます:アップルスクリプトには、"curl "のようなbashコマンドを実行できる "do shell script "コマンドがあります。前のセクションでは、特定のレイヤーまたはレイヤー値を操作するためのcurlコマンドの作成方法を説明しました。
アップルスクリプトの落とし穴
Apple Scriptでは、"curl "のようなターミナルコマンドをシェルスクリプトコマンドで実行する場合、2つの落とし穴があります:1.Apple-Scriptのパーサーに、"curl "のようなターミナルコマンドをdoシェルスクリプトコマンドに変換する場合、2つの落とし穴があります。これは、次の文字を無視するようにパーサーに伝えるためのエスケープ文字です。2.複数のテキスト部分を & で連結した場合、Apple Script にとってこれは 1 つのテキストではなく「テキストのリスト」になります。do shellコマンドは "list of text "では動作しないので、curlコマンドのテキストの最後に "as text "を付けて、単一のテキストに変換する必要があります。
curlコマンドに満足したら、それをApple Scriptの「シェルスクリプトを実行」コマンドでラップする必要がある:
必ず xxxxxxxxx を特定のレイヤー API エンドポイントに置き換えてください!
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\":\"" & lowerThirdTitle & "\"}}' -H \"Content-Type: application/json\" -X PUT \"" & layerAPIEndpoint & "\"" as text
次のアップルスクリプトの例では、30分ごとにレイヤーをオンにする方法を示している:これは商業的なオーバーレイに便利です。一定時間が経過すると自動的にオフになるレイヤーを使ってください(例えば、ループしないムービーソースを使ったプレーサーレイヤーがそうです)。
必ず xxxxxxxxx を特定のレイヤー API エンドポイントに置き換えてください!
-- 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 > 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 \"" & layerAPIEndpoint & "/setLive\"" as text
-- wait a couple of seconds to make sure we don't glitch in time
delay 5
end repeat
mimoLiveのユーザーインターフェース要素の制御
を取得する エーピーアイ エンドポイント
APIエンドポイントは、mimoLiveドキュメントの特定の要素に対応するために不可欠です。利用可能なAPIエンドポイントのリストについては、以下を参照してください。 APIエンドポイント.
mimoLive 5.5以前では、ドキュメントIDやレイヤーIDをターミナルコマンドで取得するのは困難でした。 JSON データを使用します。mimoLive 5.5以降、より簡単になりました:
まずミモライブをコピーする HTTP サーバーベース URL mimoLiveプリファレンスウィンドウのリモートコントロールセクション(上のスクリーンショットを参照)。テキストエディタ(AppleのTextEditなど)を開き、クリップボードの内容を新しく作成したテキストドキュメントに貼り付けます。その際 いいえ の最後のバックスラッシュは URL!結果はこのようになるはずだ:
http://172.28.30.202:8989
mimoLiveドキュメントウインドウでマウスを使い、興味のあるオブジェクト(レイヤー、ソース、レイヤーコントロールのボタンなど)を右クリック(またはコントロールクリック、または2本指クリック)すると、コンテキストメニューが表示されます。をコピーできるメニューが1つあります。 エーピーアイ macOSクリップボードへのエンドポイント。 エーピーアイ プロジェクトに参加している。

レイヤー全般ではなく、特定のレイヤーのバリアントに対処することが重要な場合もあります。レイヤーのパラメータを右クリックすると、レイヤーごとに異なる エーピーアイ 現在のライブレイヤーか、特定のレイヤーバリアントのエンドポイント:

テキストエディタに戻り、コピーしたファイルを貼り付けます。 エーピーアイ エンドポイント HTTP サーバーベース URL.これで URL をテキストブラウザで表示すると次のようになる:
http://172.28.30.202:8989/api/v1/documents/458706932/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B
これが最後だ。 エーピーアイ ドキュメント内のレイヤーを指定するエンドポイント。この例では 458706932 は文書IDで BA868701-8131-49CB-8EDD-8C7E6E7CD60B は、この文書内の特定のレイヤーのレイヤーIDである。
特定のユーザー・インターフェース要素を右クリックすると、特定のAPIエンドポイントを取得するためのコンテキスト・メニューが表示されます:
- 情報源
- レイヤー
- レイヤーのバリエーション
- レイヤパラメータ
- 出力先
- レイヤーセット

例スイッチのオンとオフ オフ レイヤー
検索された エーピーアイ 特定のレイヤーのエンドポイントをオン・オフするには、以下のターミナル・コマンドを使用する。
xxxxxxxxxを前のステップのAPI Endpointに置き換えてください!
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
URLはインターネットブラウザでも使用できます。
これらのURL("curl "コマンドなし)は、インターネットブラウザのアドレスバーにも入れることができます。returnを押すと、ブラウザがmimoLive HTTPサーバーを呼び出し、指定したコマンドを実行します。APIエンドポイントに送信する必要があるJSONデータがある場合、これをURLに追加することもできます。
レイヤーのライブ状態をオンまたはオフに切り替えるための完全な HTTP URL を取得する簡単な方法は、レイヤーのライブボタンを右クリックしてコンテキストメニューを表示し、「レイヤーをライブに設定する URL をコピー」を選択することです。これでURLがクリップボードにコピーされます。スクリーンショットでは、Lower Thirdレイヤーのライブボタンのコンテキストメニューが表示されています。

例レイヤーの値の変更
- レイヤーのすべてのパラメーターは HTTP エーピーアイ.新しい値を設定するには、正しいキーを見つける必要があります。この例では Lower Thirdレイヤー をキーに設定します。新しい値を JSON ファイルを HTTP サーバーに プット リクエストのcurlコマンドは少し混雑する。
*必ず xxxxxxxxx を特定のレイヤーに置き換えてください。 エーピーアイ 終点!
curl -d '{"input-values":{"tvGroup_Content__Title":"My new title"}}' -H "Content-Type: application/json" -X PUT "xxxxxxxxx"
レイヤープロパティの更新のトリガーとなる完全な HTTP URL を取得する簡単な方法は、プロパティの名前を右クリックしてコンテキストメニューを表示し、"Copy URL To Change '....「このメニューコマンドは HTTP URL をクリップボードにコピーし、(インターネットブラウザなどで)呼び出すと、プロパティが現在の値に設定されます。URLを調べることによって、このプロパティにあなた自身のデータを送るために、URLのどの部分を修正する必要があるかを決定することができます。スクリーンショットでは、Lower Thirdレイヤーの字幕を変更するためにURLをコピーするためのコンテキストメニューが表示されています。

http://127.0.0.1:8989/api/v1/documents/xxxxxxxxxxxx/layers/yyyyyyyyyyyy/variants/zzzzzzzzzzzz?include=data.attributes.input-values&fields[input-values]=tvGroup_Content__Subtitle&update=%7B%22input-values%22:%7B%22tvGroup_Content__Subtitle%22:%22mimoLive%20User%22%7D%7D
URLの新しい値はURLエンコードされていなければなりません!
この例では、"mimoLive "と "User "の間のスペースはとしてエンコードされています。
ベストプラクティス
便利なコレクション エーピーアイ 探索のためのコマンド
セッティング アールティーエムピー URL およびライブ・ストリーミング出力先のストリーミング・キー:
curl --data '{"data": { "attributes": {"settings": {"rtmpurl":"rtmp://mystreaminghost.com", "streamingkey":"MYTOTALLYSECRETSTREAMKEY"} } } }' --request PATCH http://192.168.0.100:8989/api/v1/documents/xxxxxxxxx/output-destinations/yyyyyyyyyyyyy
ファイルライターの出力先のファイル名とパスの設定
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/xxxxxxxxxxxx/output-destinations/yyyyyyyyyyyy
プレーサーレイヤーのビデオソースを設定する
yyyyyyyyyyyyyyyが UUID ビデオソースの(e.g CCAF4418-367A-415F-AD25-6536C3EF3512)
xxxxxxxxxxxは、以下のようになる。 エーピーアイ 特定のレイヤーのバリアントのエンドポイント。(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"
オーディオボリュームノブのあるレイヤーの音量を設定する
この curl コマンドを使うと、オーディオ調整ノブがあるレイヤー (Placer layer のようなレイヤー) のオーディオボリュームを変更することができます。値 "volume" には 0.0 から 1.0 までの値を指定できます。
xxxxxxxxxxxは、以下のようになる。 エーピーアイ レイヤーのエンドポイント (例: 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"
背景レイヤーの色を設定する
xxxxxxxxxxxは、以下のようになる。 エーピーアイ 特定のレイヤーのバリアントのエンドポイント。(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"
最終録画ビデオソースのファイルパスをクリアする
ソース リポジトリでは、最終録画ソースを持つことができ、ファイル録画出力先がアナウンスする最新の録画へのアクセスを提供します。キオスク アプリケーションでは、ステーションの次のユーザーが前のユーザーの録音を確認できないように、最後の録音パスをクリアする必要があります。次のAutomation Layerコマンドで、Last Recording Sourceからこの情報を消去できます:
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)
保管 JSON ミモライブ・ドキュメントのデータ
datastores "エンドポイントを使用すると、mimoLiveドキュメントにあらゆる種類のデータを保存し、ドキュメントの再読み込み時にそれを持続させることができます。を使用する必要があります。プット「データを保存するための"ゲット"リクエストで読み返すことができる。どのようなデータでも保存することができるが、この例では以下のデータを保存している。 JSON これは非常に一般的な使用例だと思われるからだ。異なるデータを保存したい場合は、-Hパラメータを適宜調整する必要がある。
データを保存するCurlコマンド:
curl —data '{"myData1": 1.5, "myData2":"Some text"}' -H "Content-Type: application/json" -X PUT http://127.0.0.1:8989/api/v1/documents/1643911183/datastores/myDataStore1
Curlコマンドでデータを読み戻す:
curl -X GET http://127.0.0.1:8989/api/v1/documents/1643911183/datastores/myDataStore1
メディアファイルソースのソースファイルパスの更新
再生されるムービーを交換したり、表示される広告を メディア・ファイル・ソース.これは、ソース上で実行される更新コマンドで行うことができます。 エーピーアイ エンドポイントである。
メディアソースのファイル参照モードが「絶対パス」に設定されていることを確認する。メディア・ソースの エーピーアイ ソースのエンドポイントを右クリックし、"ソースのコピー "を選択する。 エーピーアイ コンテキストメニューの「クリップボードへのエンドポイント」。エンドポイントを URL 次のような形である:
http://127.0.0.1:8989/api/v1/documents/<YOUR DOCUMENT ID>/sources/<SOURCE API ENDPOINT>?update={"filepath":"<LOCAL FILE PATH>"}
をエンコードしてください。 JSON のデータを URL 有効な URL のようにcurlコマンドで使える:
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
ファイルパスの先頭に"~"を付けると、現在のユーザーのホームディレクトリを参照できることに注意してください。
を変換する カール コマンドを使用する。 JSON データ HTTP URL シンプルに HTTP リクエスト
を送ることしかできないこともある。 HTTP 例えば、サードパーティのオートメーションアプリやオートメーションレイヤー mimoLive 自体の場合、curl コマンドを使用するのではなく、mimoLive にリクエストを送信します。これには、curlコマンドのデータブロックを URL.そのためには次のようにする:
次のような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
を取るだろう。 HTTP パート 第一に
http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110
?update=を追加してください:
http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110?update=
すべてのデータ文字列を取得し、不要なスペースをすべて削除します:
{"data":{"attributes":{"settings":{"rtmpurl":"rtmp://mystreaminghost.com","streamingkey":"MYTOTALLYSECRETSTREAMKEY"}}}}
にエンコードする。 URL フォーム URL以外の文字をエスケープする (例: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
最後に、?update=の後に、このすべてを次のように記述します:
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
今ならこれを使える URL シンプルに HTTP をリクエストする。