録音後の自動エンコード&iTunesプレイリストへインポート
iTunesのプレイリストに勝手に録音ファイル入れてくれればiPodで聞けて便利。
と思っていた時期が俺にもありました。
実際には、1つでもプレイリストにねとらじの録音ファイルを入れてしまうと
プレイリスト以外の再生方法(曲をシャッフルして再生とか)で聴いていると
時々、普通の曲の合間にねとらじの録音が来てウザイことこの上ないので
となって、iTunesへ登録自体しなくなるというのがオチなのですが
もしかしたら、なんか自分が思いつかない用途でこの機能が便利なパターンがあるのかも。と
ふと思いついたので実装。
◆参考にしたサイト
AppleScriptでiTunesプレイリストを操作してみる :: RakuenOverdrive/楽園オーバードライブ
http://rakuenoverdrive.net/2009/01/03/itunes-applescript-make-artist-playlist
RD-H1 → Mac → iTunes(2) - Unlimited LiFEwoRKs
http://www.vitae.jp/malkuth/no/1877
あとREALbasicからAppleScriptへ複数のワードを引き渡す方法に関してはここを参照
●タイトルを入力●
http://www.ne.jp/asahi/tan/puku/script/real/page2/index.html
で
作ったのが
プレイリストが存在しない場合にプレイリストを作る処理(以下)と
if name of every playlist does not contain PlayListName then
set NewPlayListItem to make new playlist
set the name of NewPlayListItem to PlayListName
end if
※PlayListNameは変数で、ここにプレイリスト名を代入する
ライブラリに曲を登録する処理(以下)と
set paths to TrackPath as Unicode text
set NewSongItem to add paths to playlist "ライブラリ" of source "ライブラリ"
ライブラリからプレイリストに登録する処理(以下)。
duplicate NewSongItem to playlist PlayListName
NewPlayListItemとNewSongItemっていうのが出てくるんだけど、これは実は自分でもよくわかってない。
「あのプレイリスト」「あの曲」ってのを指定するのにそういう名前をつかっているだけ。←自分で書いてても意味不明だ…
で。完成したのが
tell application "iTunes"
launch
on run {TrackPath, PlayListName, AddPlayList, AfterDelete}
tell application "iTunes"
launch
if AddPlayList = "True" then
if name of every playlist does not contain PlayListName then
set NewPlayListItem to make new playlist
set the name of NewPlayListItem to PlayListName
end if
end if
set paths to TrackPath as Unicode text
set NewSongItem to add paths to playlist "ライブラリ" of source "ライブラリ"
if AddPlayList = "True" then
duplicate NewSongItem to playlist PlayListName
end if
if AfterDelete = "True" then
tell application "Finder"
delete paths
end tell
end if
end tell
end run
pathsに曲へのフルパスをわたして、PlayListNameにプレイリスト名、AddPlayListとAfterDeleteはTrueを渡すかそうでないか。で実行可。
プレイリストじゃなくてライブラリに登録しておしまい。パターンと
全部終わった後にFinderで元のファイルを削除する。のパターンも1つのスクリプトで実行できるようにしてみた。
で
録音後の自動エンコードに関しては、今LAMEかffmpegとかのコマンドラインから実行できるヤツを使って
内部でこっそりエンコードみたいな感じにできたらいいなってことでいまやってる。