AF-1 / lms-alternativeplaycount

Alternative Play Count - a plugin for Lyrion Music Server that provides alternative play counts and skip counts to reflect your true listening history.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Alternative Play Count

Alternative Play Count1 provides alternative play counts and skip counts that aim to reflect your true listening history.

If you skip tracks in a playlist, LMS still increases their play counts. With Alternative Play Count you set a time after which a song counts as played. If you skip the song before, it counts as skipped, not played.

💡 Even though you can use APC data with any plugin and in any SQLite query, the Alternative Play Count plugin was designed with Dynamic Playlists and Visual Statistics in mind.

As LMS and APC play counts diverge in the long term, you will benefit from the more accurate quality of the data (e.g. in DPL mixes & VS charts).

⬅️ Back to the list of all plugins

Requirements

  • LMS version >= 8.0
  • LMS database = SQLite


Screenshots




Features

  • Set a time2 after which a song counts as played. If you skip the song before, it counts as skipped, not played.
  • The dynamic played/skipped value (DPSV) reflects your listening history/decisions of the recent past and is independent of the absolute play count and skip count values. A track's DPSV increases if played and decreases if skipped (see FAQ for details). You can use it to create dynamic playlists with Dynamic Playlist Creator for Dynamic Playlists or filter rules in Custom Skip.
  • Let APC automatically change the rating of a track when it's marked as played or skipped (disabled by default).
  • Separate database table for APC values (play count, date last played, skip count, date last skipped, dynamic played/skipped value)
  • Create (scheduled) backups of your APC data and restore values from backup files.
  • Automatically undo a track's last (accidental) skip count increment if the track is played within a certain time span afterwards (see plugin settings).
  • Reset play count, skip count or dynamic played/skipped value (DPSV) for individual or all tracks (see FAQ).
  • Use APC data with plugins like Dynamic Playlists or Visual Statistics.
  • Includes skip/filter rules for Custom Skip.


Installation

You should be able to install Alternative Play Count from the LMS main repository (LMS plugin library):
LMS > Settings > Plugins.

If you want to test a new patch that hasn't made it into a release version yet, you'll have to install the plugin manually.

It usually takes a few hours for a new release to be listed on the LMS plugin page.

Initial values to start with

The plugin will use the current LMS play counts as a starting point.
If you want to start from scratch (no play counts) or use only higher LMS play count values to start your APC database, then you should change this in the APC settings right after installation.
APC play count and skip count values are used once to populate the DPSV column of the APC database when you first install version 1.2 or higher. These are just initial values which you can reset at any time on this page: LMS Settings > Advanced > Alternative Play Count > Reset.


Reporting a new issue

If you want to report a new issue, please fill out this issue report template.


FAQ

»What's a dynamic played/skipped value? How does it work?«

The dynamic played/skipped value (DPSV) is supposed to reflect your recent listening habits/decisions and ranges between -100 (skipped very often recently) and 100 (played very often recently). When a track has been played long enough to count as played, the DPSV increases, just as it decreases if the track is skipped. The closer the current DPSV is to the middle of the scale (0), the greater the increase/decrease. Conversely, DPSV close to 100 or -100, i.e. tracks that have been played or skipped very often recently, change less and will therefore have to be played or skipped more often to move away from the end of the scale. Also, skipping a track decreases its DPSV twice as much as playing it increases it (this is hard-coded and not a user setting).

Example: You've been listening to a great track (rated 5 stars) too many times and you started skipping it when it came up in a mix. It's still a great track, therefore the rating shouldn't change. If you create a dynamic playlist or a CustomSkip filter that exclude tracks with a DPSV of -80 or lower, eventually this track will no longer be played, either skipped by CustomSkip or filtered out in a dynamic playlist - without changing its rating.
A quick way to get the track back into the mix would be to reset the track's DPSV to zero by clicking on the DPSV value in the track's context menu.


»Can I reset play count, skip count or DPSV for individual or all tracks?«

You can reset play counts, skip counts or DPSV for individual tracks by clicking on the corresponding item in a track's context menu (AKA song details page). Some web skins and controllers will list APC values in the >b>More info submenu.
If you want to reset *all* skip counts, DPSV or the *complete* database, you can do so on this page: LMS Settings > Advanced > Alternative Play Count > Reset.


»When I create a backup, APC does not write a backup file.«

The AlternativePlayCount folder is where APC stores its backup files. On every LMS (re)start, APC checks if there's a folder called AlternativePlayCount in the parent folder. The default parent folder is the LMS preferences folder but you can change that in APC's preferences. If it doesn't find the folder AlternativePlayCount inside the specified parent folder, it will try to create it.

The most likely cause is that APC can't create the folder because LMS doesn't have read/write permissions for the parent folder (or the AlternativePlayCount folder). There may be matching error messages in the server log.

So please make sure that LMS has read/write permissions (755) for the parent folder - and the AlternativePlayCount folder (if it exists but cannot be accessed).


»How does automatic rating work?«

If have the Ratings Light plugin installed, APC can change the rating value of a track when it's marked as played or skipped. When a track has been played long enough to count as played, the rating value increases, just as it decreases if the track is skipped.

Dynamic rating
The closer the current track rating is to the middle of the scale (50), the greater the increase/decrease. Conversely, ratings close to 100 or 0, i.e. tracks that have been played or skipped very often, change less and will therefore have to be played or skipped more often to move away from the end of the scale. Also, skipping a track decreases its rating up to twice as much as playing it increases it (this is hard-coded and not a user setting). There's a setting that gives you some control over how the dynamic rating algorithm changes ratings and an optional baseline rating for tracks never played before according to the APC database.

Linear rating
Enable this if you prefer constant/linear rating changes. If a track is then marked as played or skipped, the rating value is always increased or decreased by a constant value that you can set in the plugin settings.





Footnotes

  1. If you want localized strings in your language, please read this.

  2. i.e. percentage of the total song duration

About

Alternative Play Count - a plugin for Lyrion Music Server that provides alternative play counts and skip counts to reflect your true listening history.

License:GNU General Public License v3.0


Languages

Language:Perl 85.4%Language:HTML 14.6%