ABOUT

  itunesdb is a Tcl library for reading iTunesDB files.

  If you have an iPod, this library may be of use to you.  An iPod uses an
  iTunesDB file to store all information about its music and playlists.  Most
  importantly, iTunesDB associates song titles with files in the iPod's
  filesystem.

SAMPLE USAGE

  % package require itunesdb
  % set db [itunesdb /mnt/ipod/iPod_Control/iTunes/iTunesDB]
  % $db seek track
  % while {[$db remaining]} {
       array set track [$db read]
       puts "$track(artist) - $track(title)"
    }
  % $db destroy

URLS

- http://ioioio.net/devel/itunesdb/ - Source code.
- http://wiki.tcl.tk/12185          - Project information and discussion.

PREREQUISITES

- Tcl 8.4 - http://tcl.tk/
- Snit    - http://www.wjduquette.com/snit/

TODO

- Revamp API for use in Real programs.
- More testing, particularly of the error handling and resynchronization
  mechanism.  Also test with iTunesDB files generated by various programs,
  including iTunes itself.

WISHLIST

- Documentation.
- More speedups.
- Write support.
- iPod Shuffle support.
- Smart Playlist support.

PROGRAMS USING ITUNESDB

- tclpod - http://ioioio.net/devel/tclpod/
           http://wiki.tcl.tk/tclpod

CHANGELOG

- 11 August 2004 - version 0.01 (renamed from 0.1.0)
  + Initial release. 
- 15 March 2005 - version 0.02
  + Minor tweak to API.  Not backward-compatible.
  + Major speedups.
  + Workaround for weird playlists made by iTunes.
- 17 March 2005 - version 0.03
  + Support for group, samp_rate, volume, add_time, and bpm.
  + Fixed bad file format reporting.
  + Workaround for incorrect UTF-16 byte order on big-endian machines.

COPYRIGHT

- Andy Goth <unununium@openverse.com>

LICENSE

  I really don't want to duplicate the GPL yet again, so if you want to see the
  license for itunesdb, access the following Web links:

  HTML format: http://www.gnu.org./licenses/gpl.html
  Plain text : http://www.gnu.org./licenses/gpl.txt

vim: set ft=man tw=80 et:
