iTuner 1.2.3767 Beta 3

Rating: No reviews yet
Downloads: 48
Change Set: 42130
Released: Apr 25, 2010
Updated: Apr 26, 2010 by stevenmcohn
Dev status: Beta Help Icon

Recommended Download

Application iTunerSetup_1.2.3767B3.msi
application, 3948K, uploaded Apr 26, 2010 - 48 downloads

Release Notes

Beta 3 is requires iTunes 9.1.0.79 or later
  • A Librarian status panel showing active and queued Librarian scanners. This will be hidden behind the "big buttons" on the main window and can be displayed by clicking a toggle button similar to the toggle button in the Track info status panel at the top.
  • An automated library import feature that scans the Library folders and imports any rogue files that have not yet been included in iTunes.
  • Optimized Catalog performance by 50+%, decreasing load time, memory consumption, and query times. This was done by converting the "iTunes Music Library.xml" file to a customized terse schema. As a result, after converting a 12MB library file (about 9000 tracks) into a 4.2MB terse format and deserializing into an XElement, we've cut memory usage from 38MB to 18MB and cut query times by 80%.
  • The Librarian Catalog class will be enhanced to catch real-time Library changes. This will correctly represent playlists that were modified since startup when exporting or synchronizing.
  • Automated scanners - Duplicate, FileWatch, Maintenance, Phantoms - can be disabled via application configuration. See the iTuner.exe.config for notes. A user interface will be available in the final 1.2 release.
Implementation Notes

While working on 1.2, I discovered a few scenarios in which iTunes behaves in surprising and often unhelpful ways. I wanted to ensure that new iTuner features were rock solid and to do that required a bit of refactoring of the iTunes wrapper classes. When I have time, I plan on writing up a codeproject article explaining why and how. There's still a little work to iron out and that's why this is "Beta 3" and not final release.

The iTunes DatabaseChanged event presents its own challenges. This event is designed to notify consumers when changes occur to tracks or playlists... but isn't designed very well. It seems like more of a half-hearted after-thought that might ultimately negate the performance gains of the resident iTuner Catalog. I want to keep trying because the alternative is to abandon the Catalog and revert back to the iTunes collection classes which are dreadfully slow.

So I'll keep plugging along on those final issues. Meanwhile, I hope you give this Beta release a try and provide any feedback...

Copyright (c) 2010 Steven M. Cohn. All rights reserved.

Reviews for this release

No reviews yet for this release.