QuickTimeの画面収録の範囲をAppleScriptで自動指定する
HYBRIDWORKS 補完計画
一番大好きなWebサイト「HYBRIDWORKS」の制作者である星野正樹さんが、久しぶりにこんなことをつぶやかれていました。 フルFlashのこのサイトも、じきにリニューアルされる時が来るのだろう……そんな予感がしていた矢先のことでした。
特大サイズで描き込み。年末までにサイトをどうにかします。#hybridworks.jp http://t.co/wPEQaIPG6Q
— 星野正樹/Masaki Hoshino (@HYBRIDWORKS) 2014, 8月 30
果たして “どうにかします” が何をどこまでを指しているかはわかりませんが、可能性として、iOSデバイスで表示できない現状をどうにかする、つまり近々HTML5ベースのサイトにリニューアルされるのではないかと睨んでいます。
なので、大変長くお世話になったこのサイトをなんとかして補完できないかと考え、スクリーンキャスト(録画)を行うことを検討しました(※あくまで個人用途)。一般的な、静止しているコンテンツのWebサイトであればキャプチャを撮って保存すればよいのですが、細やかなアニメーションと心地良い効果音を確実に残すには動画しかないと判断しました。
QuickTime Player の「画面収録」機能を使う
Macの録画は少し調べたら QuickTime Player で可能とのことだったので、試してみました。しかし録画範囲がドラッグによる指定なため、いくつかに分けて録画しようと思っていたものの、毎回位置やサイズが微妙にバラバラになり兼ねないことが危惧されました。 他のスクリーンキャストアプリ「QuickCast」というものも試してみたのですが、どうもFPSが低い気がして、納得いきませんでした。 やはり QuickTime Player で撮ったものがクオリティも高く、純正ならではの安心感があるのでなんとかしようと考えました。
AppleScript でマウスポインタのドラッグ&ドロップ
さすが、こういったことを調べると必ず行き着くことで定評のあるザリガニ先輩のブログ。 AppleScript はまだちゃんと扱ったことがないのでよくわからないや。。でも、ご丁寧なことに「以下コードをAppleScript エディタで開く」なんていうリンクまで用意していただいており、これを活用することに。そのまま実行しても関数定義が読み込まれるだけなので、サンプルコードをコメントから出して実行してみるとエラー。動作には RubyCocoa が前提のようなのでインストールして動作確認し、下記のコードを書きました。
delay 5 left_drag(1000, 200, 2280, 920)
動画サイズは 1280 x 720 で、この範囲指定にうまく入るようにウィンドウ位置をセットしました。
delay 5
はスクリプトを開始して画面収録開始ボタンを押し、範囲指定待機状態になるまでの時間です。
できた!!
大きさピッタリ 1280 x 720 です。