Amarok/Manual/Playlist/AutomaticPlaylistGenerator

From KDE UserBase Wiki

Category_Amarok

Under Construction

This is a new page, currently under construction!


Automated Playlist Generator

The Automated Playlist Generator (APG) automatically generates playlists based on constraints you set, these constraints can be set based on song data (Author, Artist, Genre) or acess time(Last Time Played), there are also special constraints to determine how Amarok is going to look for songs. You will find the APG in your Media pane, Playlists -> Automated Playlist Generator.

APG Presets' toolbar

This is the APG Presets' toolbar, from left to right we have the following buttons:

  • Add new preset: Adds a blank preset that can be modified.
  • Edit selected preset: Opens up the APG Preset Editor window to edit the currently selected preset's constraints.
  • Delete selected preset: Removes the selected preset from the list, can NOT be undone.
  • Import new preset: Import a preset from a .xml file, has the potential to be malformed if edited outside amarok, use the constraint tester.
  • Export the selected preset: Export the selected preset to a .xml file that can be imported.
  • Run constraint tester: Tests the selected preset for consistency.
  • Run APG with selected preset: Loads APG with the selected preset and automatically generates a playlist.

Working with Presets

APG Preset Editor window
APG Preset Editor window

Presets are sets of rules that Amarok's APG will use when generating playlists, these rules are going to be refered to as constraints from now on, every preset is determined by the constraints that make it up, groups of constraints hierarchically and logically organized are called constraint trees.

Constraints

Constraints are the building blocks of constraint trees, they are simple statements that the APG will use to add songs to the playlist it generates, to add a constraint to the currently selected preset's constraint tree use the Edit selected preset option from the APG Presets' toolbar and click the Add new option on the APG Preset Editor window, note that this will add the constraint under the selected item (constraint or constraint group).

Note that you can add many different kinds of constraints, each of them works in a different way inside the tree.

Constraint Types

Amarok's APG supports several types of constraints, these are:

  • Match Tags constraints: The most important constraints, these can be set to virtually any information regarding the file, supported settings include: artist name, album name, genre, year, last time played, bpm, sample rate and score.
  • Playlist Duration constraints: These constraints set the running time (in HH:MM:SS format) that the playlist should have.
  • Playlist Length constraints; These constraints determine how many songs should be in the playlist.
  • Checkpoint constraints; Checkpoint constraints work by telling amarok where to start/stop looking for songs.
  • Prevent Duplicates constraints; These constraints prevent amarok from electing the same tracks, songs from the same artist, or the same album.

Note that you can change how constraints work in various manners, one of them is setting the fuzzy-exact slider, this slider determines how closely the constraint is going to be followed.

Another way to modify constraints that is present mainly on Match Tags ones is the option to set the option box at the left of the value to: contains (which will consider any songs that have the according text in their tag), matches (which will consider songs whose corresponding match exactly the one in the text box), starts with and ends with.

You can also edit the way value-based (such as the Length constraints and the playcount Match Tag constrain) behave by changing the option close to the text to settings such as fewer than, equals and more than.

Another way to change constraint behavior is to check the invert checkbox on them, this makes them behave the opposite way, a Match Tag: artist contains <name> becomes Match Tag: artist not contains <name>.

Constraint Groups

Constraint groups can be added from the Add new option from the APG Preset Editor window, constraints under a group are logically linked, the same applies to groups under groups. There are currently two kinds of constraint groups: "Match all" groups and "Match any" groups. "Match all" groups require that all the constraints under them are met by the song. "Match any" groups require that at least one of the constraints under them are met by the song, to add a constraint under a specific group highlight it on the preset editor and use the Add new option.

Using your Presets

Once you set up a preset, you just have to select it on the APG Presets panel and click the rightmost button on the toolbar (Run APG with selected preset), you will then have a playlist matching your criteria, like this:

Playlist generated by the constraint tree below.