CommandPost から書き出したチャプター一覧をYouTubeの目次に整形する処理の自動化

AppleScript

CommandPost にはFinal Cut Proのチャプターマーカーをcsvファイルに書き出す機能がある。これを使ってYouTubeの目次になるようにテキスト整形する処理を、これまでは手動でおこなっていたが自動化することにした。

AppleScriptでCommandPostを操作する

まずはアップルスクリプトを使ってCommandPost からCSV ファイルの「Timeline Index.csv」をデスクトップに書き出す処理を書く。

CommandPost ではLUAスクリプト言語のコマンドをアップルスクリプトで実行できる。

tell application "CommandPost"
	execute lua code "require(\"cp.plugins\")(\"finalcutpro.timeline.lanes\").selectClipAtLane(1)"
end tell
execute lua code "〜" 

というのがアップルスクリプトのコマンドで、〜部分にLUAコマンドを記述するような感じみたい。”などの記号はエスケープする必要がある。

ところでこの「タイムラインインデックスをCSVに保存」コマンドを実行して表示されるファイル保存ダイアログだが、下のような2種類のダイアログがあり、どちらが登場するかわからない。

ダイアログ TYPE01(仮)
ダイアログ TYPE02

この2種類のダイアログ、どうやらMac内での持ち主が違うらしく、同じAppleスクリプトのコードでは両方に対応できず、それぞれに違うコード記述を必要とした。

苦労の末に下のようなコードに辿り着いた。

tell application "CommandPost"
	tell application "Final Cut Pro" to activate
	execute lua code "cp.triggerAction(\"fcpx_cmds\",{id=\"saveTimelineIndexToCSV\"})"
end tell
delay 1
set isok to false
tell application "System Events"
	tell application process "Final Cut Pro"
		set frontmost to true
		tell window 1
			if exists button "選択" then
				click button "選択"
				set isok to true
			end if
		end tell
	end tell
	if isok is false then
		tell application process "CommandPost"
			click button "Choose" of window "Choose a Folder"
		end tell
	end if
end tell

どうやらTYPE01のダイアログの所有はFinal Cut Proで、TYPE02の持ち主はCommandPostらしい。何でこんなことになっているのかは不明だ。

テキストを整形するショートカットを作成する

あとはテキストを整形する処理だが、なんやかんやでここからはショートカットアプリを使った。

何のことはない正規表現を使ってCSVファイルの文字列を整形しているだけだが、何だかいつも使っているCotEditorの正規表現とは少し違っているところがあったり、ショートカットアプリならではのアクションの使い方に苦戦を強いられたが何とか処理はできる。

BetterTouchToolで2つの処理を連続処理する

最後にアップルスクリプトとショートカットをBetterTouchToolで一つのトリガーに連続して登録してしまえば一連の処理として続けて実行してくれる。

"名前","位置","メモ"
"オープニング","00:00:00:00",""
"イントロ","00:00:15:11",""
"メモアプリのメモを付箋にするとは","00:01:24:19",""
"メモアプリ付箋のちょっとした問題点","00:04:44:15",""
"面倒な操作を不要にするAppleScript","00:06:12:01",""
"アウトロ","00:11:12:02",""
"エンディング","00:12:32:09",""

上のようなテキストが、僕の場合はBTTでNotch Barのボタンをクリックすると下のように整形されてクリップボードにコピーされる。

00:00 オープニング
00:15 イントロ
01:24 メモアプリのメモを付箋にするとは
04:44 メモアプリ付箋のちょっとした問題点
06:12 面倒な操作を不要にするAppleScript
11:12 アウトロ
12:32 エンディング

まあ上出来。…かな。

コメント

タイトルとURLをコピーしました