🎶 App Review: iSyncr + Rocket Player

If you recall, I recently wrote about some problems I was having with my iPod Classics, both of which had been modified with the Tarkan iFlash adaptor to 512GB. Luckily, the fellow who installed the adapter for me was able to get them out of the Reboot loop, and I have restored them. That got me thinking again about non-iPod solutions. There were a variety of options available:

  • Dedicated music players such as the Fiio or Astell & Kern provide great sound quality, but are expensive, require additional SD cards for storage, do not support smart playlists, and cannot integrate with my large existing iTunes library. There are precious little details online about their interfaces, and especially about their interfaces on the PC side for managing the music libraries.
  • An iPod Touch does not work, because their storage is not expandable and currently maxes out at 128GB. An older iPhone has more storage, but is also much more expensive, and has been designed by Apple to have diminishing battery life — plus planned obsolescence.
  • Using my existing Android phone, which can support Micro-SD cards up to 2TB.

When I started exploring the Android ecosystem, the first option was a cloud subscription model. For a multitude of reasons, I do not like streaming music — you need larger data packages for your phone, and you may not always have service where you want it. But programs like Apple Music and Google Play Music (GPM) do allow you to, within limits (50,000 songs for GPM; 100,000 songs for AM), upload your music library to their cloud (where they may substitute existing tracks they have), and then download it into the SD card from your mobile device. Initially, I thought about that option, in particular with Apple Music, which would support Smart Playlists. Both work with iTunes, either natively or with a media manager. They also have other arbitrary limits, such as GPM limiting playlists to 1,000 songs. Both also require monthly payments to Apple or Google, companies that don’t need your money, avoid taxes, and are not longer out to do good, IMHO.

But then I stumbled upon the apps from a small family company, JRT Studio (FB). They have two apps: iSyncr and Rocket Player, that were of interest. The apps had free and pay version, and the pay version was a one time payment. They appeared to do what I wanted to do: iSyncr would read the iTunes database and move the music to an SD card; it would also sync back to iTunes play times, counts, and ratings. Rocket Player was a music player designed to play music from an Android’s internal storage, and provided a widget to add ratings. I use ratings to flag tracks I like, and tracks that need repair.

So, after stumbling on a sale on 512GB MicroSD cards (for $99 at Amazon, half-price!), I decided to go the iSyncr route. I ordered the card, installed it, and attempted to sync. The good news is that, after some stumbles, I was able to get the process working and copied all the music and playlists to my SD card. The Rocket Player works well, and even additionally supports its own form of smart playlists so that I could create ones that do live updates (existing smart playlists in iTunes transfer as a static copy that do not update). In general, the process was easy once I figured it out. Over time, I’m playing with tuning the process to make it more efficient.

I cannot, however, give the products a ⭐⭐⭐⭐⭐ rating at this time. I have to dial it back to ⭐⭐⭐⭐½ because of some problems.

For iSyncr:

  • The interface is, at times, user unfriendly, or at least, non-intuitive. It took me a while to realize using the USB transfer that it was calculating the space as a preparation to sync, and that you had to initiate the sync separately. If you want to keep adding playlists slowly, it has to rescan iTunes for each playlist. Establishing the permissions for it to communicate is also a bit complicated, although that is in some ways due to Android and Windows. The Windows component also installs straight to the system tray, and the user interface is not explained well.
  • The product needs to be a bit more security aware: it may require too many firewall permissions (it is unclear if those can be dialed back, in particular, the public access option if you only want to sync on home networks), and I’m not 100% sure on the Android permissions. They also need to sign their Windows executable. I understand why they don’t sign it (privacy issues), but I believe those should be surmountable.
  • It would be nice if the product communicated over Bluetooth as well as Wi-Fi and USB.
  • There seemed to be a bizarre interaction after resetting the Android Media Library that resulted in a large playlist (Music) being limited to 100 songs. It appears that everything in the playlist transfers, but that the project of the playlist itself is what is short. We thought it was a license issue, but it turned out to be a permissions problem. It was resolved by deleting that playlist in Rocket Player (which required re-granting permissions to the directory on the SD card), and then re-syncing that playlist via iSyncr on WiFi.

For Rocket Player:

  • Their live list capability is a bit more limited that iTunes. Here are a few things that I noted:
    • iTunes smart playlists provide full equation capability — that is: a & b & (c | d) & (f | g). Live lists give each predicate an option of mandatory or optional, where “optional” means connected to the other predicates with an “or” (and that only really comes into play if there is one required component — if all are optional, you get the entire library)
    • There are conditionals available on iTunes, such as “starts with”, that are not available for live lists. Of course, Apple needs full regex matching, but that’s probably a reach.
    • There are fields you can test for in iTunes, such as the length of the track, that are not available for Live Lists. This was particularly annoying for me, as I have Smart Lists that partition my podcasts based on length, and I couldn’t reconstruct them in Rocket Player
  • One of these apps (I suspect Rocket Player) may be a battery drain. I noticed since adding the apps that the battery drains faster, but I haven’t fully figured out the culprit. It appears it may be Rocket Player, when it is in the foreground or rescanning the SD card. It appears to be managable. What is unknown if other players would be equally draining if they were the ones in the foreground and doing the scanning.

However, the biggest problem for both apps was, well, dealing with bigness. The programs do not work efficiently with very large libraries such as mine: 45,600 songs, playlists that are 20,000 songs, and at least 256GB in music and podcasts. iSyncr originally took an hour or two to process the playlists to sync. By tinkering with which playlists I transfer (and recreating the smart playlists and live lists and not transferring them), I’ve gotten the time down to 15-30 minutes.  Rocket Player takes a long time to start up and recognize the music, and an even longer time to scan for new music. Some of this may be due to the Android media library, but I don’t think that’s the entire picture. I think they tested in on smaller libraries and it worked just fine; my library is an anomaly and very large.

Given that the products are (currently) a backup, and that I only plan to sync once a day when it is near my computer, the faults are not insurmountable. Still, they are annoying (and thus the 4½⭐ rating). I hope that they can improve the efficiency and user interface of these products in the future.