I may be honing in on a solution.
I've been looking at GoneMad Music Player for a while. It has really robust smart lists and a great interface. The big problem was the synchronization of the metadata. But I was so fed up with Rocketplayer crashing, I went ahead and downloaded GMMP yesterday. Works well, but none of my playcounts.
But then I got to thinking. The iTunes library is an XML file. GMMP allows me to save and restore stats from an XML file. I can write a script to bring the two in sync. The process would then be to use iSyncr USB (currently working, but I might switch to something else) to bring down changed files*. I then have GMMP scan for new files, and then save the stats. I then run the script and update the stats, and restore the stats. (*: There seem to be numerous programs that can synchronize the files in the directories, although I might need to do a one time reset of everything to get away from the syncr directory)
If you're curious, here's a comparison of the formats:
In the stats file produced by GMMP:
<File><Uri>/storage/9C33-6BBD/syncr/1944 Original Cast/Mexican Hayride (1944 Original Cast)/01 Sing To Me, Guitar.mp3</Uri><Rating>0.0</Rating><Playcount>0</Playcount><LastPlayed>0</LastPlayed><DateAdded>1670729645589</DateAdded><DateUpdated>1670729657187</DateUpdated><SkipCount>0</SkipCount></File>
In the Itunes Library XML:
<key>47481</key>
<dict>
<key>Track ID</key><integer>47481</integer>
<key>Size</key><integer>4005520</integer>
<key>Total Time</key><integer>180166</integer>
<key>Disc Number</key><integer>1</integer>
<key>Disc Count</key><integer>1</integer>
<key>Track Number</key><integer>1</integer>
<key>Track Count</key><integer>8</integer>
<key>Year</key><integer>1944</integer>
<key>Date Modified</key><date>2010-05-01T18:31:17Z</date>
<key>Date Added</key><date>2010-05-01T18:27:49Z</date>
<key>Bit Rate</key><integer>160</integer>
<key>Sample Rate</key><integer>44100</integer>
<key>Play Count</key><integer>14</integer>
<key>Play Date</key><integer>
3692248296</integer>
<key>Play Date UTC</key><date>2020-12-31T16:31:36Z</date>
<key>Release Date</key><date>2019-12-11T02:15:10Z</date>
<key>Rating</key><integer>80</integer>
<key>Rating Computed</key><true/>
<key>Album Rating</key><integer>80</integer>
<key>Album Rating Computed</key><true/>
<key>Artwork Count</key><integer>1</integer>
<key>Persistent ID</key><string>FF5292DF4D2AE609</string>
<key>Track Type</key><string>File</string>
<key>File Folder Count</key><integer>5</integer>
<key>Library Folder Count</key><integer>1</integer>
<key>Name</key><string>Sing To Me, Guitar</string>
<key>Artist</key><string>Corinna Mura, Chorus</string>
<key>Album Artist</key><string>1944 Original Cast</string>
<key>Composer</key><string>Cole Porter</string>
<key>Album</key><string>Mexican Hayride (1944 Original Cast)</string>
<key>Genre</key><string>Soundtrack</string>
<key>Kind</key><string>MPEG audio file</string>
<key>Location</key><string>file://localhost/M:/Music/iTunes/Music/1944%20Original%20Cast/Mexican%20Hayride%20(1944%20Original%20Cast)/01%20Sing%20To%20Me,%20Guitar.mp3</string>
</dict>
I just need to figure out how the dates convert between the two, the ratings conversion, and figure out how to get the file names to match up as keys, and the script should just fall into place.