2004-07-28	hymn <hymn@hymn-project.org>
	* hymn/atoms.c: Fix mdat processing bugs related to chunk offsets.

2004-07-24	hymn <hymn@hymn-project.org>
	Fix for bug #1.
	* hymn/hymn.c: Only open the output file if infile processing
	succeeds.

	Fix for bug #2.
	* cli/cli.c: Determine file_sep based on environment variables.

	Fix for bug #4.
	* hymn/atoms.c: Capture 'stsc' atom information and use it when
	parsing 'mdat' atom.  Move decryption into hymn.c.
	* hymn/hymn.c: Key decryption moved here from atoms.c.

	Add upgrade support.
	* hymn/upgrade.c: Add this file.
	* hymn/upgrade.h: Add this file.
	* hymn/hymn.c: If infile and outfile are the same, try to upgrade
	instead of decrypt.

	Add output file option in cocoa_ui.
	* cocoa_ui/HymnController.h: New text fields and button for
	setting target directory.
	* cocoa_ui/HymnController.h: New method for setting target
	directory.  Use target directory to build output file name.

2004-06-16	hymn <hymn@hymn-project.org>
	Merge newest VideoLAN DRMS code.
	* hymn/drms.c: Merge newest version from VideoLAN.
	* hymn/drmsvl.h: Extract hymn-specific drms.c code into new header.

	iTunes 4.6 compatibility.  Modified from anonymous patch.
	* hymn/atoms.c: Change apId and geID atom names to "free".
	* hymn/atoms.h: Make META a container atom.  Add apID and geID atoms.
	* hymn/hymn.c: Cleanup initialization.

2004-05-09	playfair <playfair@mac.hush.com>
	Major code rewrite and reorganization complete for version 0.6.0.
	No longer using mp4ff and mp4v2.  Project renamed to hymn (Hear
	Your Music aNywhere).

2004-04-15	playfair <playfair@programmer.net>
	Pull version info for cocoa_ui from config.h
	* configure.in: Remove cocoa_ui/Info.plist as a config file.
	* cocoa_ui/PlayfairController.h: Add action method for about
	panel.
	* cocoa_ui/PlayfairController.m: Add action method for about
	panel.
	* cocoa_ui/Info.plist.in: Remove this file.
	* cocoa_ui/Info.plist: Add this file back w/o version info.

2004-04-14	playfair <playfair@programmer.net>
	Add documentation.
	* doc/playfair-manual.docbook: File added.
	* doc/playfair-version.in: File added.
	* doc/*.png: Screenshots added.
	* doc/playfair-manual.html: So end users don't have to have
	docbook tools installed.
	* doc/playfair-manual.pdf: So end users don't have to have
	docbook tools installed.
	* doc/playfair-manual.txt: So end users don't have to have
	docbook tools installed.

2004-04-12	playfair <playfair@programmer.net>
	Changes to better handle version information.
	* cocoa_ui/Credits.html: Add this file.
	* cocoa_ui/English.lproj/MainMenu.nib/InfoPlist.strings: Remove a
	few keys so that the about box will auto-generate itself from
	Info.plist.
	* cocoa_ui/Info.plist: Remove this file.
	* cocoa_ui/Info.plist.in: Add this file with @VERSION@ string to
	be substituted.
	* cocoa_ui/Makefile.in: Add processing for Info.plist.
	* cocoa_ui/playfair.xcode/project.pbxproj: Add Credits.html.

	Reimplement the way application quits when window closes.
	* cocoa_ui/English.lproj/MainMenu.nib/keyedobject.nib: Add
	application delegate.
	* cocoa_ui/PlayfairController.m: Add
	applicationShouldTerminateWhenLastWindowClosed.
	* cocoa_ui/PlayfairWindow.m: Remove close method.

	Changes to integrate Cocoa UI build into automake build.
	* configure: Add cocoa_ui to subdirs if xcodebuild is present.
	* configure.in: Add cocoa_ui to subdirs if xcodebuild is present.
	* cocoa_ui/Makefile.am: Add this file.
	* cocoa_ui/Makefile.in: Add this file.
	* src/Makefile.am: Add cocoa_ui to subdirs if xcodebuild is present.

	Changes for MingW build.
	* configure.in: Add checks for MingW environment and add libstdc++
	and libwsock32.
	* mp4ff/mp4atom.c: Add windows.h and tchar.h.
	* mp4ff/mp4ff_int_types.h: Don't redefine int8_t and uint8_t.
	* mp4v2/mp4atom.cpp: Add ctype.h.
	* mp4v2/mp4property.cpp: Don't redefine LLU.
	* mp4v2/mp4util.cpp: Add ctype.h, sys/timeb.h and gettimeofday()
	function.
	* mp4v2/systems.h: Don't define HAVE_IN_PORT_T and HAVE_SOCKLEN_T.
	Add stdint.h and uint* types.  Define some LLU defines and
	redefine FPOS_TO_VAR and VAR_TO_FPOS.
	* playfair/keyutils.c: Include windows.h and tchar.h.

2004-04-10	playfair <playfair@programmer.net>
	Release version 0.5.0.

	Multi drag-'n'-drop support in the Cocoa UI.
	* cocoa_ui/PlayfairController.h: Added clearButton and clear
	method.
	* cocoa_ui/PlayfairController.m: Support multiple drags before a
	convert operation.
	* cocoa_ui/PlayfairWindow.m: Quit application on window close.

	Batch mode and remove outfile argument and add extension argument.
	* cli/Makefile.am: Add filename.h and filename.c to SOURCES.
	* cli/Makefile.in: Add filename.h and filename.c to SOURCES.
	* cli/cli.c: Rewrite argument parsing to support batch mode
	instead of output file.  Add ext argument for output file
	extension.
	* cli/filename.c: Implement functions to parse filenames and get
	output filenames based on input filenames.
	* cli/filename.h: Header file for filename functionality.

	Fail gracefully if the input file doesn't exist.
	* playfair/playfair.c: Fix fopen() error checking bug.

	Fail gracefully if the DRMS keys can't be found or generated.
	* cli/cli.c: Don't write out the error to stderr twice.
	* cocoa_ui/PlayfairController.m: Leave any error message that
	happened during the conversion in the status line.
	* cocoa_ui/playfair.xcode/project.pbxproj: Add mp4ff/drmserr.h.
	* mp4ff/Makefile.am: Add mp4ffint.h and drmserr.h to INCLUDES.
	* mp4ff/Makefile.in: Add mp4ffint.h and drmserr.h to INCLUDES.
	* mp4ff/drms.c: Return various ERROR_DRMS_XXX errors for various
	different error conditions instead of -1 for every error
	condition.
	* mp4ff/drms.h: Pull in drmserr.h.
	* mp4ff/drmserr.h: New file with error numbers for error
	conditions.
	* mp4ff/mp4atom.c: Check for error conditions while parsing atoms.
	* mp4ff/mp4ff.c: Check for error conditions while parsing atoms.
	* mp4ff/mp4ff.h: Expose the mp4ff_t and all necessary subtypes.
	* mp4ff/mp4ffint.h: Pull in drmserr.h.
	* playfair/pferrors.h: Add error messages for various DRMS errors.
	* playfair/playfair.c: Die on various DRMS errors.

2004-04-07	playfair <playfair@programmer.net>
	Move CLI usage error to CLI project.
	* cli/cli.c: Added usage function -- no more ERR_USAGE.
	* playfair/pferrors.h: Removed ERR_USAGE.

	Fix DRMS author(s) lines.
	* mp4ff/drms.c: Added Sam Hocevar back to Authors.

2004-04-07	playfair <playfair@programmer.net>
	Release version 0.3.
	* README: Update with pointer to web site.
	* INSTALL: Improve installation instructions and add instructions
	for Cocoa UI installation.

	Create OS X Cocoa UI.
	* cocoa_ui/*: First version.

	Add callbacks to playfair.
	* cli/cli.c: Integrate with playfair callbacks.
	* playfair/pftypes.h: Add callback structure.
	* playfair/playfair.c: Change functions to accept callback
	structure as argument 0.
	* playfair/playfair.h: Change convert() interface to accept
	callback structure.

2004-04-06	playfair <playfair@programmer.net>
	Break out CLI into its own subproject.
	* cli/cli.c: First version.
	* mp4v2/mpeg4ip.h: Fixed boolean typedef declaration.
	* playfair/Makefile.am: Make playfair subproject a library.
	* playfair/errors.h: --> pferrors.h
	* playfair/pftypes.h: First version.
	* playfair/playfair.c: Remove main() function.  Create convert()
	function.
	* playfair/playfair.h: First version.

2004-04-02	playfair <playfair@programmer.net>
	Release version 0.2.

	Ensure DRMS code will work.
	* playfair/keyutils.c: Implement function to try to ensure that
	the DRMS code will be able to get a key.  This means that
	either (a) the DRMS key storage directory exists, (b) the program
	is running on Windows or (c) an iPod is connected and detected.
	* playfair/playfair.c: Invoke new function.

2004-03-30	playfair <playfair@programmer.net>
	Release version 0.1.
