AppleScriptでiTunesのビデオにアートワークを付ける時に嵌った箇所
追記(2016.05.23)
iTunes 12.4からdescription of artwork 1 of the_track
がmissing valueを返すようになったようです
なので
set artwork_description to description of artwork 1 of the_track if artwork_description is missing value then ... end if
となります missing valueはnillのようなものです
追記終わり
既に設定しているファイルをスキップする
既にアートワークを設定したファイルをスキップしたい時に音楽ファイルの場合は
if exists data of artwork1 of theTrack is false
や
if data of artwork1 of theTrack is not ""
とすれば設定されていないことが分かる
だたビデオファイルの場合はビデオの中から自動的にサムネイルを作成してアートワークに設定してくれている様だった(違うかもしれない)
artworkの設定個数 | scriptで出力されるファイル |
---|---|
0 artwork | サムネイル |
1 artwork | artwork1 |
2 artwork | artwork1 / artwork2 |
アートワークの説明を使う
そこでスクリプトでアートワークを設定する際にアートワークに説明(text)に任意のキーワードを設定して次にスクリプトを実行した時、説明にキーワードが設定されていたらスキップするようにした
set theDescription to description of artwork 1 of theTrack if theDescription is "" then --アートワークの説明が設定されていない end if
こうすることで1度このスクリプトで設定されたファイルはスキップできる
参考ページ
ffmpegでmkvをmp4にした
動画を以下の様に映像は無変換でmkv(FLAC/AVC)からmp4(AAC/AVC)にしたい
今回はffmpegを使うことにする
ffmpeg
FFmpeg(エフエフエムペグ)は動画と音声を変換することのできるUNIX系OS生まれのフリーソフトウェアであり、libavcodec(動画/音声のコーデックライブラリ)、libavformat(動画/音声のコンテナライブラリ)、libswscale(色空間・サイズ変換ライブラリ)、libavfilter(動画のフィルタリングライブラリ)などを含む。ライセンスはコンパイル時のオプションによりLGPLかGPLに決定される。コマンドラインから使用することができる。対応コーデックが多く、多彩なオプションを使用可能なため、幅広く利用されている。
via FFmpeg - Wikipedia
やってみる
ffmpegで普通に変換したらMPEG Audioになって音が曇った感じになってしまった
いろいろ調べて今のところ最適なオプションにたどり着いた
DIRPATH=$1 for FILE in ${DIRPATH}*.mkv do ffmpeg -i "${FILE}" -vcodec copy -acodec aac -strict experimental -ab 128k -aprofile aac_low -ac 2 -ar 44100 "${FILE%.mkv}.mp4" done
変換するファイルが複数だったので初めてシェルスクリプト使った
変換するファイルのあるディレクトリで実行するとmkvのファイルだけをmp4に変換してくれる
雑感
参考ページ
AppleScriptでtell 内で他の関数を呼ぶ
on run tell application hello() end tell end run on hello() log "Hello World" end hello
このままだと Can’t get hello of application. と言われてしまうので
tell application hello() of me end tell
とすることでtell内で他のハンドラを呼ぶことができた