AppleScriptでiTunesのテレビ番組を連続再生する
iTunes のテレビ番組を連続再生するには再生したいテレビ番組をプレイリストに登録してリピート再生するという方法がある。
しかし、毎度毎度プレイリストを作るのは大変なので AppleScript を使って自動で次のエピソードに移動するようにしてみる
仕組み
- Scriptを起動したら TV Show が再生されていないか20秒毎にチェックする
- 再生されていたらそのEpisode の合計時間と現在の再生位置から残りの再生時間を3分ごとに調べる
- 残りの再生時間が3分以下になったら1分ごとにチェック、1分以下になったら1秒ごとにチェック
- 残りの再生時間が1秒以下になったら次のEpisode に移動する
- 2にもどる
今回使った命令いろいろ
次のEpisode に移動
- これは他の種類のメディア(音楽とか)にも使えてキーボードについている送りキー[▶︎▶︎]と同じ機能を持つ
tell application "iTunes" next track end tell
再生中のトラックの合計時間を調べる
- 1:20:30(h:m:s) のように出力される
tell application "iTunes" set timeSize to time of current track as text end tell
再生中のトラックの再生済みの時間を調べる
- 秒で出力される
- 再生されていない時は
missing value
となる
tell application "iTunes" set nowPositionSec to player position end tell
コードは Gist にある
This applescript will automatically play the episode of the next iTunes TV show. · GitHub
- 右にある
Download ZIP
からダウンロードする - Script Editor で開いて
.app
形式で保存する - Spotlight から起動したり、iTunes Scriptフォルダに入れて iTunes からも起動できる
- iTunes Scriptフォルダは
~/Library/iTunes/Scripts
参考ページ
- 鳶嶋工房 / AppleScript / Tips / スクリプトの中断
- スクリプトの中断
- iTunes for Mac まとめ - AppleScript
- iTunes関連の命令について
- life log: AppleScript 最速基本文法マスター
- AppleScriptについて
- iTunes Scripts の使い方
- iTunes Scriptフォルダの場所
ありがとうございます