Skip to content
AF-1 edited this page Jan 18, 2025 · 10 revisions

Custom Skip wiki


Filter rules like "Skip artist XY" or "Skip short tracks" are grouped in filter sets (= group of filter rules).

Primary and secondary filter sets

Primary filter set

On the web page you can set a primary filter set (by clicking on the name of a filter set) that will always filter tracks. The name of the currently active primary filter set is displayed at the top.
Since the active primary filter set will filter tracks globally (= always) you'll want to include only a few rather general filter rules like filter all tracks shorter than 90 seconds or filter all tracks with the word never in their comment tag.

You can also use CLI commands to enable/disable the primary filter set:

  • customskip setfilter defaultfilterset.cs.xml to enable the filter set called defaultfilterset.cs.xml
  • customskip clearfilter to disable the primary filter set.

Please note:

  • You have to use the complete file name (incl. the file extension .cs.xml).
  • The file name is case-sensitive. CustomSkip would consider TEST.cs.xml and test.cs.xml two different filter sets.

Important: Changing or disabling the primary filter set will also disable any active secondary filter set!


Secondary filter set

You can enable a second(ary) filter set whose rules will be evaluated/executed in addition to the rules of the active primary filter set (if there is an active primary filter enabled for your client/player). Secondary CustomSkip filter sets are enabled/disabled with a CLI command followed by the filename of the secondary filter set:

  • customskip setsecondaryfilter TEST.cs.xml will enable the filter set TEST.cs.xml
  • customskip clearsecondaryfilter TEST.cs.xml will disable the secondary filter set for a client.

Important: Primary and secondary filter sets are client-specific. You can enable different primary and secondary filter sets for different clients. Therefore you'll have to prefix all CLI commands with the client's ID (MAC address).



Dynamic Playlists

Dynamic playlists can use the PlaylistStartAction and PlaylistStopAction parameters to execute the one of the above CLI commands when a dynamic playlist is started or stopped.
It's used to enable or disable a secondary CustomSkip filter set to filter tracks at playtime. Selecting a Customkip filter set in the Dynamic Playlist Creator plugin does the exact same thing: add these 2 parameters to make CustomSkip enable/disable the selected (secondary) filter set.

Example:

-- PlaylistStartAction1:cli:customskip setsecondaryfilter TEST.cs.xml
-- PlaylistStopAction1:cli:customskip clearsecondaryfilter

The PlaylistStopAction parameter to disable to selected (secondary) CustomSkip filter set is executed as soon as the Dynamic Playlists plugin stops adding new songs and is no longer 'active'. So if DPL can't find more tracks matching your search criteria it stops being 'active' and disables the secondary filter on exiting. The remaining unplayed songs in your client playlist will no longer be filtered by the secondary CustomSkip filter set because DPL disabled it on exiting. If that happens a lot to you I recommend setting the DPL preference max. number of unplayed tracks to a low number so DPL doesn't stop and disable the secondary CS filter too soon.


Only filter dynamic playlist tracks

If you wish to filter only tracks from active dynamic playlists, there are 2 ways:

Using the filter set option

Filter sets have an option called Use only with Dynamic Playlists. If you check this, Custom Skip will only use this filter set if there's an active dynamic playlist. Don't forget to make this filter set your primary active filter set.

Using the secondary filter set

You can select any of your filter sets that are not the active primary filter set as your secondary CustomSkip filter set when you create a dynamic playlist with Dynamic Playlist Creator. The Dynamic Playlists plugin will enable the selected secondary filter set when your dynamic playlist is started and disable it when it's no longer active.

Result: no filtering should happen unless the Dynamic Playlists plugin is active and you told it to enable a secondary filter set.