Which country you from Rhino? I presumed you were american but if your up at this time of the morning then I'm guessing your not as it's now ridiculasly early in america.
Here's an idea I had.
Firstly - I think your db should not be used so much to store all the same info as MJ as this could cause inconsistency problems but instead it's main purpose should be to store aditional info eg: Album Rating, top 10 albums, etc etc.
And for the sync problem I was thinking, you could store the info from MJ and then every time AV is loaded, you could check the recently imported playlist to see if anything new has been added and if so then add this to AV too.
Also, I know there are no such thing's as 'Albums' but for the plugin you create them so use this definition of an album to just store the album info.
Then like if you hover over an album in over screen - there's a lagg before the tool tip turns up, use this lagg period to re-read all the info for that 'album'.
For the album details screen, if an album is to be shown, refresh all the info for it from MJ.
That way the album details will be updated fairly frequently.
For the track Details and Reports obviously no specific album is being dealt with so this isn't possible so there might be some inconsistency there but hopefully if the info is being updated any time any album is chosen in any of the other screens this will be minor.
You know how you added 'Genre' as well, could this also be added to Album Details so there would be a: Genre/Artist/Album?
Also, for the images I had an idea.
Before you were caching them and it was making the memory usage go huge. I was thinking, if you resize and change the quality of the images so that they're all thumbnails the same size as that specified, then change the quality factor to say 70 so you have tons of jpeg thumbnails. These should each probably work out to be around 10kb or less. If all these were then stored in memory, it'd take 100 albums to take up 1meg of memory so it wouldn't be too bad. This would give you speed and control over the size of the memory usage as you'd know how big each album cover was and you'd know how many albums there were.
Some of my album images are like 300kb so if u were trying to cache these that would be why the memory usage would be so high.
I'm not sure how you implemented the image caching but what'd you think? Would this work?
Nice work as always
Nila