Windows > Third Party Plug-ins, Programs, and Skins

ZStats tool to process [Play History] statistics, generate TOP N playlists

<< < (2/9) > >>

zybex:
v1.0.2 published with a feature requested by Lepa:

Add Pre-History feature:
-- InferPreHistory and PreHistoryField config options
-- [PreHistory] token for number of plays before [Play History] started

This option is to have the tool generate older timestamps when the [Play History] field has fewer entries than [Number Plays]. For instance:
- file was Imported in July 2019
- [Number Plays] is 50
- [Play History] was started in May 2021 and only has 30 timestamps
=> In this scenario, ZStats will generate the missing 20 timestamps, spreading them out between July 2019 and May 2021. Playlists and Stats that cover this period will then include these Plays. This option is enabled by default.

Additionally, the tool can optionally write this auto-generated list of Timestamps back to MC by setting the PreHistoryField option in zstats.ini. This is disabled by default.
You can also use the new [PreHistory] token to output the count of Plays before History started, and to generate a Playlist of Top Pre-History played files.
 
The SampleConfig has been updated with the new options.

lepa:
Thanks for the preHistory! Also if one wants to have song level real time you can always +1 the needed items int the [Play Stats] using MC's expression after playing.

I got some exceptions on both Album and Artist level stats

--- Code: ---Updating statistics field [Artist Stats], grouped by [Artist]
An exception occurred during execution! Please report this issue to the developer:
System.NullReferenceException: Object reference not set to an instance of an object.
   at ZStats.Program.<>c__DisplayClass13_1.<UpdateMCStats>b__0(MCFile f)
   at System.Linq.Enumerable.WhereListIterator`1.MoveNext()
   at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
   at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
   at ZStats.Program.UpdateMCStats()
   at ZStats.Program.runStats()
   at ZStats.Program.Main(String[] args)

--- End code ---


--- Code: ---Updating statistics field [Album Stats], grouped by [Filename (Path)]
An exception occurred during execution! Please report this issue to the developer:
System.ArgumentNullException: Value cannot be null.
Parameter name: key
   at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
   at System.Collections.Generic.Dictionary`2.ContainsKey(TKey key)
   at ZStats.Program.UpdateMCStats()
   at ZStats.Program.runStats()
   at ZStats.Program.Main(String[] args)
--- End code ---

zybex:
The second exception was caused by case-sensitive field names. Please change "Filename (Path)" to "Filename (path)" in the zstats.ini, or just upgrade to ZStats v1.0.3 which is no longer case-sensitive.

The first one seems similar but I couldn't replicate it. Please let me know if you still see it.
The first one was triggered by empty [Artist] field values and is also fixed in v1.0.3.

lepa:
I can confirm that it is now a bug free program

zybex:

--- Quote from: lepa on January 26, 2022, 12:27:15 pm ---I can confirm that it is now a bug free program

--- End quote ---
AH! Famous last words... there's no such thing!

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version