| Mac-iTunes documentation | Contained in the Mac-iTunes distribution. |
Mac::iTunes::Library::Write - create an iTunes Music Library file
see the Mac::iTunes documentation
This module turns a Mac::iTunes object into an iTunes Music Library
file.
This source is part of a SourceForge project which always has the latest sources in CVS, as well as all of the previous releases.
http://sourceforge.net/projects/brian-d-foy/
If, for some reason, I disappear from the world, one of the other members of the project can shepherd this module appropriately.
* just wait.
brian d foy, <bdfoy@cpan.org>
Copyright (c) 2002-2007 brian d foy. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| Mac-iTunes documentation | Contained in the Mac-iTunes distribution. |
# $Id: Write.pm 2206 2007-03-17 02:02:40Z comdog $ package Mac::iTunes::Library::Write; use strict; use base qw(Mac::iTunes); use vars qw($VERSION $XML_HEAD $XML_FOOT); $VERSION = 1.10; #sprintf "%d.%02d", q$Revision: 2206 $ =~ m/ (\d+) \. (\d+) /gx;
BEGIN { $XML_HEAD =<<"XML"; <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Major Version</key> <integer>1</integer> <key>Minor Version</key> <integer>1</integer> <key>Application Version</key> <string>3.0</string> <key>Tracks</key> <dict> XML $XML_FOOT =<<"XML"; </dict> </plist> XML } sub as_xml { my $self = shift; my $str = $XML_HEAD; $str .= $XML_FOOT; return $str; } sub item_xml { my $self = shift; my $item = shift; my $str =<<"XML"; <key>67</key> <dict> <key>Track ID</key> <integer>$$item{id}</integer> <key>Name</key> <string>$$item{title}</string> <key>Artist</key> <string>$$item{artist}</string> <key>Album</key> <string>$$item{album}</string> <key>Genre</key> <string>$$item{genre}</string> <key>Kind</key> <string>MPEG audio file</string> <key>Size</key> <integer>$$item{size}</integer> <key>Total Time</key> <integer>$$item{seconds}</integer> <key>Track Number</key> <integer>$$item{track}</integer> <key>Track Count</key> <integer>$$item{total_tracks}</integer> <key>Date Modified</key> <date>$$item{modified}</date> <key>Date Added</key> <date>$$item{added}</date> <key>Bit Rate</key> <integer>$$item{bit_rate}</integer> <key>Sample Rate</key> <integer>$$item{sample_rate}</integer> <key>File Type</key> <integer>$$item{file_type}</integer> <key>File Creator</key> <integer>$$item{file_creator}</integer> <key>Location</key> <string>$$item{url}</string> <key>File Folder Count</key> <integer>$$item{file_count}</integer> <key>Library Folder Count</key> <integer>$$item{library_count}</integer> </dict> XML return $str; }
"See why 1984 won't be like 1984";