日々適当

hibitekitou

iTunesに登録された曲の再生回数をいじる

mac |2012-06-26

iTunesに既に取り込んである曲をCDから取り込み直した時、取り込み時に既存の曲を置き換えるか聞いてきてくれる時はいいんですが、そうでは無い時、その曲に関する情報がリセットされます。既存の曲を置き換える時、曲の読みがなとか再生回数とか、そんな読み込み時には付加されず、後に自力で入力したり、聞いていくうちに付加される情報が引き継がれるのわけですね。しかし、それらがリセットされてしまう事がある。

まぁ読みがなは自力で入力してもいいんです。しかし、再生回数についてはどうしようもない。iTunesから再生回数をいじる時、その回数をリセットするという動作しか選べませんから。

そこで、AppleScriptで設定してやります。

基本的には、

tell application "iTunes"
        set selItems to selection
        repeat with selItem in selItems
                set played count of selItem to 10
        end repeat
end tell

<追記>iTunesのところをMusicにすることで、macOS Big Sur環境でも動作。

これでいいです。これで再生回数が10回になります。
ところで、ネット上にある同じようなスクリプトを見ると、選択した項目を得る時、

set selItems to selection

の部分を

set sel_ref to a reference to selection

と書いていることが多いようです。上の書き方がリストデータその物へのアクセスなのに対して、リストのリファレンスにアクセスするというのが下なのだそうですが、…よく分かりません(^^; リストへのアクセスを高速化したい時なんかに使うようです。

ともあれ、基本的にこんな簡単な書き方で出来てしまいます。

個人的には選択した項目に対して、再生回数を変えられればいいので、最終的にはこんなスクリプトになりました。

tell application "iTunes"
        set maxCount to 0
        set sel_ref to a reference to selection
        repeat with selItem in sel_ref
                if maxCount < played count of selItem then
                        set maxCount to played count of selItem
                end if
        end repeat

        set newCount to text returned of (display dialog "再生回数はいくつにすんの?" default answer (maxCount as string))

        display dialog "実行する?"
        repeat with selItem in sel_ref
                set played count of selItem to newCount as number
                end repeat
        end tell
</pre>

特にひねりも無く、エラー処理もありませんけど、iTunesのスクリプトメニューから呼び出せるようにしております。

コメント ( 0 )|Trackback ( )
 
コメント
 
コメントはありません。
コメントを投稿する
ブログ作成者から承認されるまでコメントは反映されません
 
名前
タイトル
URL
コメント
コメント利用規約に同意の上コメント投稿を行ってください。

数字4桁を入力し、投稿ボタンを押してください。