|
Post by isaacm on Nov 3, 2021 19:02:19 GMT -5
Hi! Having an issue with smart playlists. Tried searching for similar topics but couldn't find answers.
So I have a smart playlist with the following rules (verifying ratings after revamping and consolidating multiple small music libraries): ・Match: All Rules ・Rules: (1) "Rating" Equals 0.0; (2) "Last Played" Older Than 5 days; (3) "Genre" Not Equals 'audiobook' I limit to 100 items (to save my sanity) and enqueue. The queue is set to remove items after playing.
Problem: Sometimes I finish a queue and enqueue again from the same smart playlist. I open the playlist and go out once believing this refreshes the contents (the songs seem to shuffle whenever I open and close). However, often I get songs that were just played (sometimes even the same day) and sometimes I get rated songs and audiobooks. Now, the audiobooks may be incorrect settings on the audiobook item. The ratings issue may be due to many songs being rated using MusicBee on my PC rather than GMMP (though it would be great if GMPP could recognize and process ratings from other software). BUT, the inclusion of songs that were just played **same day, on GMMP** leads me to believe the rules are not being enforced correctly.
Sorry for the lengthy post. Any suggestions or pointers to what I may be doing wrong?
|
|
|
Post by GoneMAD on Nov 3, 2021 20:06:40 GMT -5
a smart playlist is just a set of rules so if you enqueue from the smart playlist list it'll do a fresh query every time. As for the other stuff id' have to see whats in the database. Are you using the musicbee sync or restoring the stats through the settings? Because that could potentially be restoring old last played values. Skipping a track before it finishes can also prevent the last played field from being updated as well
I just recreated that ruleset and can confirm the database query is correct, so your last played is either not getting updated or being overwritten with an old value
SELECT DISTINCT tracks.track_name AS track_name, tracks.track_duration AS track_duration, GROUP_CONCAT(DISTINCT artists.artist) AS artist, tracks.song_id AS song_id, tracks.track_uri AS track_uri FROM tracks INNER JOIN artist_tracks ON artist_tracks.song_id = tracks.song_id INNER JOIN artists ON artists.artist_id = artist_tracks.artist_id INNER JOIN genre_tracks ON genre_tracks.song_id = tracks.song_id INNER JOIN genres ON genres.genre_id = genre_tracks.genre_id WHERE (tracks.song_rating = ? AND tracks.track_last_played < ? AND genres.genre LIKE ?) GROUP BY tracks.song_id ORDER BY RANDOM() DESC LIMIT 100 2021-11-03 21:03:42.126 2434-2434/gonemad.gmmp I/QueryFactory: Params: 0, 1635555822125, audiobook
1635555822125 =
GMT: Saturday, October 30, 2021 1:03:42.125 AM Your time zone: Friday, October 29, 2021 9:03:42.125 PM GMT-04:00 DST Relative: 5 days ago
|
|
|
Post by isaacm on Nov 3, 2021 21:32:44 GMT -5
Thank you for the quick reply! ::: As for the other stuff id' have to see whats in the databaseI don't know how I can export it. Could you tell me (if indeed you can/will follow up)? ::: Are you using the musicbee sync ?Yep. But this issue happens even without syncing in between. I attach 3 current screenshots from my Android phone - I haven't synced with MusicBee but I have gone through one queue and enqueued again from the Smart Playlist in question. #2 is the current queue. I marked song 53 and 57. #3 is the Song Info for song 53 showing it's an audiobook. Now I notice that this may be a strict lowercase/uppercase distinction in the query because the field in the rule is [Genre Not Equals audiobook] with a small a.. Now the GMMP Song Info doesn't show the 'Last Played' field but #4 is a screenshot from Scroball (which is what I use to sync play counts with MusicBee). It shows #57 in the queue was played just yesterday (Japan time - it's already the 4th here). ::: your last played is either not getting updated or being overwritten with an old valueCan you think why? BTW, the Last Played info in MusicBee (gathered through Scroball) is always accurate (date and time). So I don't know why that same info is not being reflected in GMMP (or at least not taken into account by the Smart Playlist query).. Thanks for any help. It's not a huge issue (I can always skip) but it is a nuisance. If no one has pointed this until now, I figure something in my setup I'm not doing right...
|
|
|
Post by GoneMAD on Nov 3, 2021 21:57:06 GMT -5
its not an issue with the "audiobook" rule so dont worry about that
What does the last played smart playlist list? I checked mine and it seems pretty up to date. Last played not being updated would only be caused if the track was skipped or a stat backup/restore restored the old value for last played. Even if musicbee does have the correct time, i dont know if it actually restores that field in the sync or it leaves it blank which would most likely reset last played back to 0. I dont use sync so im not sure
I can take a look at the database by sending in an in app error report. Should be somehwere in the settings -> general -> submit error report. It'll attach the database to the email along with some other info
One thing i'd like you to try is when you requeue the smart playlist.. do it from the smart playlist list using the 3 dot menu. That will make sure its always doing a fresh query. The other thing to try would be disabling 'remove after played' and seeing if the issue persists. It could possibly be a bug that prevents last played / playcount getting updated when that setting is enabled.
|
|
|
Post by isaacm on Nov 3, 2021 22:43:58 GMT -5
Thanks again! ::: What does the last played smart playlist list?I attach a screenshot. It doesn't give Last Played date/time but the order seems pretty accurate and matches the Scroball history I attached before.. Really baffled here..
::: I can take a look at the database by sending in an in app error reportSent that a minute ago from my gmail account (isaacmartins @). Thanks. ::: when you requeue the smart playlist.. do it from the smart playlist list using the 3 dot menu::: The other thing to try would be disabling 'remove after played' and seeing if the issue persistsYep, that's how I always enqueue (open the smart playlist→close→enqueue from the vertical dots menu). I will try to uncheck the "Remove After Played" option and see if it helps.. (maybe it removes songs so fast that the database doesn't get updated hahaha j/k).. Attachments:
|
|
|
Post by GoneMAD on Nov 4, 2021 10:05:13 GMT -5
Thanks again! ::: What does the last played smart playlist list?I attach a screenshot. It doesn't give Last Played date/time but the order seems pretty accurate and matches the Scroball history I attached before.. Really baffled here..
::: I can take a look at the database by sending in an in app error reportSent that a minute ago from my gmail account (isaacmartins @). Thanks. ::: when you requeue the smart playlist.. do it from the smart playlist list using the 3 dot menu::: The other thing to try would be disabling 'remove after played' and seeing if the issue persistsYep, that's how I always enqueue (open the smart playlist→close→enqueue from the vertical dots menu). I will try to uncheck the "Remove After Played" option and see if it helps.. (maybe it removes songs so fast that the database doesn't get updated hahaha j/k).. probably wont be a until a few days until i can look into it more but i did get the email, thanks "I will try to uncheck the "Remove After Played" option and see if it helps.. (maybe it removes songs so fast that the database doesn't get updated hahaha j/k)." There is a diff logic flow / code path that happens with that setting so perhaps, i missed updating last playing in that path (but if the last played smart playlist seems to show the correct order then thats probably not it)
|
|
|
Post by isaacm on Nov 5, 2021 4:17:36 GMT -5
:::probably wont be a until a few days until i can look into it more but i did get the email, thanksAppreciated. Like I said, it's more of a minor nuisance than a huge problem. I love using GMMP ! :::(but if the last played smart playlist seems to show the correct order then thats probably not it)This is what baffled me the most. If the Last Played data is correctly sent to MusicBee and GMMP's own Recently Played smart list has the correct order, it means the played data is correct and it's just that the query of my own smart playlist is not taking it into account or is looking somewhere else.. Anywayz, a little mystery for when you have time )
|
|
|
Post by GoneMAD on Nov 5, 2021 6:58:29 GMT -5
If you could email me the .spl file for your smart playlist I can be sure to test with exactly what you have. Should be in storage/gmmp/smart/
|
|
|
Post by GoneMAD on Nov 15, 2021 11:29:59 GMT -5
did you ever send the spl file? When i ran that query on your database file it returned 100 tracks with a 0 playcount, so without the spl file there isnt much more i can look into
|
|
|
Post by isaacm on Nov 15, 2021 19:45:27 GMT -5
Hi! Sorry, I hadn't been following this thread for a few days. I have just submitted an error report with the SPL file attached. I had just enqueued a new query from the NotPlayed smart playlist so I haven't checked yet if the current queue or smart playlist does indeed include tracks that are rated or have been recently played. (As I mentioned in my initial post, it happens often but not always..)
Thanks again for following up. I'll try to check this thread more often too -- sorry.
- Isaac
|
|
|
Post by GoneMAD on Nov 16, 2021 9:06:32 GMT -5
got it.
So everything seems to look correct to me. I can run the same query on your database to enqueue tracks and it always returns 100 with a 0 playcount or 0 last_played time. I can bring in your smart playlist into my phone and have it work correctly too. I do see in the database file you sent me that the queue does have some tracks that were played recently, so isee what you are seeing but i dont have any explanation nor can reproduce it on my end.
One other thing i noticed that it looks like you did a fresh scan recently? All the date added times were within a few days?
|
|
|
Post by isaacm on Nov 16, 2021 19:21:26 GMT -5
Hi ::: so isee what you are seeing but i dont have any explanation nor can reproduce it on my endYep that's the worst. If you can't reproduce, it's impossible to try to get to the reasons. Thanks for trying though. I'll only add that it seems to be more common in the following case - 1. I sync with PC (MusicBee) 2. I enqueue from the smart playlist (all the 100 tracks are not recently played and unrated) 3. I go through the queue, clear it (before I had the setting to automatically remove from queue after playback) 4. Without syncing to PC, I enqueue again from the smart playlist <== this time I notice the second batch of 100 tracks is much more likely to include recently played and already rated tracks *** It's very unlikely that the second query looks to a different set of metadata but that's how it seems. ***Another data point (which I think should be irrelevant) - GMMP is installed on the phone's internal storage while the music files are stored on the extension SD card. That shouldn't affect the query? ::: One other thing i noticed that it looks like you did a fresh scan recently? All the date added times were within a few days?Yes, the latest data and SPL file are from a recent query after a sync with MusicBee. I use this smart playlist just to go through old unrated files. Anywayz, I'll just leave it as an inexplicable minor annoyance It's not how I usually use smart playlists and I doubt it affects many ppl.. It's still curious why this happens.. Thanks for all your time! (and for a great product)
|
|