Amarok/Manual/Playlist/AutomaticPlaylistGenerator

From KDE UserBase Wiki
Revision as of 17:52, 14 June 2011 by Annew (talk | contribs)


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 access 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 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 APG will use when generating playlists. These rules are going to be referred to as constraints from now on; every preset is determined by the constraints which create it. 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 constraint tree use the Edit selected preset option from the APG Preset 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).

Many different kinds of constraints can be added; each works in a different way inside the tree.

Constraint Types

Amarok APG supports several types of constraints:

Constraint Description
Match Tags The most important constraints, because they can be set to virtually any information regarding the file, including: artist name, album name, genre, year, last time played, bpm, sample rate and score.
Playlist Duration Set the running time (in HH:MM:SS format) that the playlist should have
Playlist Length Determine how many songs should be in the playlist
Checkpoint Tell Amarok where to start and stop looking for tracks
Prevent Duplicates Prevent Amarok from selecting the same tracks, songs from the same artist, or the same album

Note that you can change how constraints work in various manners, such as setting the fuzzy-exact slider, which determines how closely the constraint is going to be followed.

Another way to modify constraints that is present mainly on Match Tags is 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 constraint) 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.