NP Test Report -- Looking really good !
100% Success... track primary picture IS saved to "Artwork file:" What is particularly cool about this artwork feature is that all artworks are saved as the one name and file type - a genius solution in simplification. Far better than I originally asked for.
------------
99% Lyrics are saved, sometimes there are not, perhaps partly due to a race condition,
but there may also be an issue with the lyricsReloaded plugin ... i'm not sure until potential races are resolved.
I observed the following, I played a track that displayed lyric, the lyric has been in the MB InternalCache since 19/8/2013. Yet the NP lyric file was 0KB - strange. And this happened after a previous track from the same album output to the lyrics file with no problem. Also, in another case, I watched MB fetch the lyrics and then clicked again on the track -- the result was correct output - race on.
So for the race condition, I suggest a TP timer loop. Actually, this can be used for two purposes, here is an example you can code up...
timerLoop()
if remainingPlaytime is greater than 5 seconds
// 1. Handle lyrics. Fetching from internet can take time
if exists(currentTrack -> lyrics)
savefile(prefs -> lyricsFilename)
endif
// 2. handle rotating artist pictures (e.g. flickr, future proofing a future art plugin or a MB upgrade)
chksum = md5(artistPicture)
if last_chksum is not equal to chksum
last_chksum = chksum // new picture found
savefile(prefs -> artistPicture)
endif
endif
end_timerLoop
NP_main()
...
set last_chksum = null
call timerLoop every 2 seconds
...
end_NP_main
Ideally, MB would have a "Lyrics ready" call-back, but a timer loop test will do if/until then.
------------
Currently, if MB does not download a hi res image, then "Artwork picture:" will be 0KB. Perhaps delete this file so a 3rd party scripts can issue an...
IF EXIST "%artworkPicture%"
which would be far easier than trying to determine a 0 byte filesize from a scripting perspective. Naturally, all output files would be handled in the same manner as described here.
------------
Thanks again