Skip tracks in the playlist 解説

これ何?

タグや custom_info のデータベースに書き込まれている情報を参考にし、自動的に特定の曲の再生をスキップするコンポーネント。 デフォルトでは SKIP = 1 か SKIP = true となっているファイルの再生をスキップします。プレイリストには表示させたいけど演奏はさせたくない場合などにどうぞ。

設定 (Preferences)

設定画面は Preferences>Playback>skip control にあります。

up556.png

ここではスキップの条件を TitleFormatting を使うことで追加できます。Add でスクリプトを追加、delete でスクリプトを削除します。 ※作成したスクリプトは、後でツールバーから選択しないと動作しません。このスクリプトを実行して "1" や "TRUE" が返されるファイルはスキップされます。

例えば

$if(%rating%,,1)

このスクリプトを例にとると、RATING に何か値があるならば何も文字を返さない、つまり "1" や "TRUE" を返さないのでスキップせず、RATING に値が無ければ "1" を返すのでスキップします。

次にデフォルトのスクリプトを例にとってみます。

$if2(%skip%,0)

$if2 を使っていますが、結果的に SKIP = 1 か SKIP = true となっているファイルの再生をスキップすることが分かります。 ("0" と書いてあるのは「スキップしない」ということを分かりやすくする為だと思われます)   なお、スクリプトは再生された瞬間にだけ参照されるので、 再生途中に値が変わってもスキップされません。 (例えば「曲の途中で SKIP = 1 にしたらその曲をスキップ」や、 %_time_elapsed_seconds% を使って「30秒たったらスキップ」や、 %_ispaused% を使って「一時停止したらスキップ」、ということは出来ない)

また、playback core から値を得る関数及び2バイト文字は使えないようです。

スクリプトのサンプル

※ スクリプトの意味を理解しやすくするために、ここでは "TRUE" を使いました。

  1. SKIP に何か値のあるトラックをストップ
    $if(%skip%,TRUE,FALSE)
  2. 一曲が 300 秒を超えるファイルをスキップ
    $ifgreater(%_length_seconds%,300,TRUE,FALSE)
  3. RATING が 1 以下、または Rating が無いファイルをスキップ
    $ifgreater(1,%rating%,FALSE,TRUE)
  4. SKIP = 1 かつ RATING が 1 以下のファイルをスキップ
    $if($equal(%skip%,1),$ifgreater(%rating%,1,FALSE,TRUE),FALSE)
  5. 50% の確率でランダムにスキップ(v0.9.4.5)
    $ifequal($rand(2),0,TRUE,FALSE)

設定 (ツールバー)

Playback>Skip から設定できます。

up557.png

Last-modified: 2016-02-03 (水) 23:00:00