GithubHelp home page GithubHelp logo

af-1 / lms-contextstats Goto Github PK

View Code? Open in Web Editor NEW
1.0 3.0 0.0 347 KB

Context Stats - a plugin for Lyrion Music Server that lets you display lists of tracks, albums or artists sorted by statistics from the context menus of artists, albums, genres, years and playlists.

License: GNU General Public License v3.0

HTML 26.66% Perl 73.34%
context-menu logitech-media-server lyrion-music-server playlist squeezebox-server squeezeserver statistics

lms-contextstats's Introduction

Context Stats

Context Stats1 lets you display lists of tracks, albums or artists sorted by statistics from the context menus of artists, albums, genres, years and playlists.

For more general library statistics (e.g. genres with the most or best rated tracks), have a look at the Visual Statistics plugin.

If you use this plugin and like it, perhaps you could give it a ⭐ so that other users can discover it (in their News Feed). Thank you.

Requirements

  • LMS version >= 8.4
  • LMS database = SQLite

⬅️ Back to the list of all plugins


Screenshots2




Installation

Using the repository URL


Manual Install

Please read the instructions on how to install a plugin manually.


Reporting a new issue

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

If you use this plugin and like it, perhaps you could give it a ⭐ so that other users can discover it (in their News Feed). Thank you.



FAQ

»What do AvR, TR, AvPC, TPC, AvSC, TSC and DPSV stand for?«

- AvR = average rating
- TR = total rating
- AvPC = average play count
- TPC = total play count
- AvSC = average skip count
- TSC = total skip count
- DPSV = average dynamic played/skipped value.


»In the lists of most/least total played or top total rated albums/artists, albums are sometimes listed more than once. Why?«

This happens if the LMS database contains more than one contributor for the same contributor role (artist, album artist, track artist, band).
Artists and albums lists in Context Stats will have items for each contributor (with identical total rating, play count and skip count values).




Footnotes

  1. If you want localized strings in your language, please read this. inspired by Erland's TrackStat.

  2. The screenshots might not correspond to the current UI in every detail.

lms-contextstats's People

Contributors

af-1 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

lms-contextstats's Issues

Artist and Album play counts may give unexpected results for "Most Played" queries

DESCRIBE THE BUG

The plugin computes play counts for tracks, albums, and artists. The play count for a track comprises the total number of times that track has been played, as expected. The play count for an artist appears to be the total number of artist track plays, divided (normalized) by the total number of library tracks for that artist. The play count for an album appears to be the total number of album track plays divided by the total number of album tracks.

In other words, the album or artist play counts represent how completely that album or artist has been played. Looks like this is the same thing as "Average Play Count" in the Visual Statistics plugin. [cool plugin btw]

Especially in the case of artist play counts, this can cause distorted results when comparing artists with large vs. small numbers of library tracks.


TO REPRODUCE

  1. Go to "My Music"-->"Context Stats"-->"Artists"-->"Most Played"
  2. The list of "Most Played" artists is biased toward artists with few library tracks. The actual "most played" artists in my library do not even show up on the list.


EXPECTED BEHAVIOR

I expected the artists I listen to the most to have the highest artist play count and appear near the top of the list.


VERSION INFO

  • LMS version: 8.5.2
  • OS (version): piCore - EN - utf8
  • Plugin version: 0.2.0
  • Web skin/controller: Material Skin
  • Browser (version): Safari 17.5, MacOS 14.5, iOS 17.5.1


ADDITIONAL CONTEXT

Here's a somewhat extreme example from my library (approx. 100,000 tracks; 7,000 albums; 1,700 artists).

Consider two artists in my library:

  1. Wilco -- One of my favorite and most listened-to bands. 2822 library tracks between studio albums, box sets, live recordings, etc.
  2. Fat Daddy -- Artist on Track 1 of "A John Waters Christmas", a compilation of stupid and kitschy holiday songs that gets played repeatedly around our house during the month of December. So, there is just one track by Fat Daddy in my entire library.

When I do a query for "Most Played" artists, I would expect to see Wilco near or at the top of the list since we listen to them frequently. But instead, the top artist is Fat Daddy with a PC=28. Wilco's PC is 0.87, which doesn't put them anywhere near the top of the "Most Played" artist list.

If I correctly understand your PC calculation, this means that since stats have been collected, I have played Fat Daddy 28 times (PC28 * 1 library track), and Wilco 2455 times (PC 0.87 * 2822 library tracks).

In the case of a query for "Most Played" artist, I think the absolute total number of track plays is a more meaningful metric and would put Wilco near the top of my list where it belongs.

The averaged calculation for album play counts is less of a problem. Querying "Most Played" albums returns a list that makes sense, although it does discriminate against albums with a high track count.

I don't have TrackStat installed anymore, so I can't compare your query results to Erland's. However I suspect he used absolute total plays for all of his "Most Played" queries. I recall that searching for "Most Played" albums, artists, and tracks with TrackStat all returned results that made sense.

Anyway, my suggestion is to use absolute total track plays for all "Most Played" queries.

Feature Request: Add option to browse album or artist returned by query

DESCRIBE THE BUG

When I click on an album title returned by a specific search (either from context menu or top-level), the options presented are "Play now", "Play next", and "Append to queue". It would be useful to have an option to browse the album (i.e. open it in the left-hand pane) to view its tracks. Similar issue with returned artists -- it would be helpful to be able to "browse" the artist, and see a list of their albums in the left-hand pane. Currently, the only options involve adding the results to the play queue.



TO REPRODUCE

Steps to reproduce the behavior:

[home menu item enabled in settings]

  1. Click on "My Music"-->"Context Stats"-->"Albums"
  2. [example] Click on "Not Completely Rated"
  3. Click on returned album title
  4. Options presented are "Play now", "Play next", and "Append to queue". No option to "Browse".

or:

  1. Click on "My Music"-->"Artists"
  2. Open context menu for a particular artist
  3. Click on "Albums sorted by statistics"
  4. Click on returned album title
  5. Options presented are "Play now", "Play next", and "Append to queue". No option to "Browse".

or (artist query):

  1. Click on "My Music"-->"Context Stats"-->"Artists"
  2. [example] Click on "Most Played"
  3. Click on returned artist name
  4. Options presented are "Play now", "Play next", and "Append to queue". No option to "Browse".



EXPECTED BEHAVIOR

There should be an option to browse the album or artist returned by the query. Currently, the only available options involve adding the album or artist to the play queue.



VERSION INFO

  • LMS version: 8.5.2
  • OS (version): piCore - EN - utf8
  • Plugin version: Context Stats 0.1.8
  • Web skin/controller: Material Skin 5.0.4
  • Browser (version): Safari 17.5 (Mac OS 14.5; iOS 17.5.1)



ADDITIONAL CONTEXT

Example of how this would help me: I wish to find unrated or not completely rated albums in my library and rate them. I have used TrackStat in the past for this, and would like to do this with Context Stats now that it replaces most (all?) of the functionality of Erland's old plugin. Ideally, I would bring up the list of "Not completely rated" albums and open a returned album in the browse pane. Then I can quickly add ratings from the context menu for an individual track or the entire album.

I can do this with the Context Stats plugin as is, but it requires the extra steps of adding the album to the play queue, then clicking on the album title on one track in the queue to open that album in the browse pane. It would streamline my workflow to open a query result directly into the browse pane. Plus, if I'm listening to music while using your plugin, I would rather not alter the play queue in order to browse a query result.

FYI, I am the guy (Greggy_Oakland) that asked about replicating the "Last Played Songs" query from TrackStat in the LMS forum. Thanks for pointing me to your plugin. I was a subscriber and regular user of Erland's plugins for years -- I appreciate all your efforts to pick up where he left off. Kudos to your work on Dynamic Playlists in particular.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.