コンテンツへスキップ

ATEM miniマクロをAppleScriptで実行

  • by

早いものでATEM miniを使い始めて、足掛け3年になりました。その間大きな不具合もほとんどなく、安定して使ってきました。私が使っているのは、Liveストリーミング機能を持たない最もシンプルなモデルです。この多機能なATEM miniには、連続したUI操作のシーケンスをプログラムできる、マクロ機能があります。非常に強力で、込み入った操作を実行する場合には、マクロに任せることをお勧めします。ただ、マクロ機能は専用の小さなウインドウの中にボタンがあり、ATEM Software Controlアプリがアクティブにならないと表示されません。せっかくのマクロを実行する際には少しだけ手間がかかるのが残念なところです。Macを使っているユーザーなら、Apple Script経由でマクロのボタンを押すことができます。

AppleScriptは自動処理のための機能

私は時々シェルスクリプトを使って、自動処理をすることがあります。AppleScriptはmacOS専用の自動処理機能で、シェルスクリプトでは困難なUI処理もカバーしています。今回やりたいウインドウ内の特定のボタンをクリックする、というような処理は正にAppleScriptの独壇場だと言えます。しかし、課題もあります。それは情報が少ない点です。私もそんな背景があるので、どうしてもAppleScriptでなければならないようなケースでしか使わないのが正直なところです。そこで今回は、私が検証してうまく動作したスクリプトを公開したいと思います。

tell application "ATEM Software Control"
	activate
end tell

tell application "System Events"
	tell group 2 of window "Macros" of application process "SwitcherGUI" of application "System Events"
		tell button "XXX"
			click
		end tell
	end tell
end tell

このようなコードで目的のボタンをクリックできます。スクリプト内の「XXX」がボタンに割り当てられたラベルですので、ご使用の環境に合わせて修正してください。

使用上の注意

動作への前提条件ですが、macOS 12.3.1のM1搭載のMacBook Proで動作確認しました。特に特殊な環境ではありませんが、macOSの下位バージョンでは私の想定外の動作になる可能性は少しだけあると思います。ATEM miniのマクロは1ページしか使っていませんので、複数ページでは動作しないと思います。たくさんマクロを使用する方は、別途カスタマイズが必要になるはずです。実行の際には、ATEM Software Controlアプリはアクティブでなくても構いません。上記のスクリプト内でアクティブに切り替えるようになります。そのため、実行時には必ずウインドウが表示されます。また、ATEM Software Controlは、通常人力でボタンをクリックするときのように、タブは「Run」に切り替えて、クリックするだけでマクロが実行するようにチェックボタン(Recall and Run)を有効にしてください。さらにですが、このスクリプトを実行する時には、ATEM Software Controlアプリは起動しておくことが必要です。

上記のスクリプトは、単一のアプリ化しても良いですし、Automator経由でも使えます。私のようにAlfredから実行することも可能です。最近のmacOSではAppleScript実行へのセキュリティチェックが厳しくなっていますので、アプリ化したスクリプトが動作しない場合には、システム環境設定のセキュリティの設定を見直してみてください。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください