2009-06-03  Dirk Meyer <dischi@freevo.org>

	* setup.py, NEWS: prepare release

2009-05-28  Jason Tackaberry <tack@urandom.ca>

	* src/video/mp4.py:
	Header might contain unprintable characters, so use repr instead.

2009-05-27  Jason Tackaberry <tack@urandom.ca>

	* src/audio/eyeD3/mp3.py:
	Add comments to previous commit. Inspired from patch provided by
	Matthias Reichl <hias@horus.com>

	* src/audio/eyeD3/mp3.py: Don't miss headers spanning the 64k boundary.

	* src/factory.py: Log the extension when no parser is found by ext.

	* src/audio/eyeD3/mp3.py:
	Fix problem where new find_header() was actually completely and
	utterly busted with no hope of working properly whatsoever. Sigh.

2009-05-26  Dirk Meyer <dischi@freevo.org>

	* setup.py, NEWS: prepare release

2009-05-22  Jason Tackaberry <tack@urandom.ca>

	* src/misc/xmlfile.py:
	Don't freak out on malformed xml files (including 0 byte files).

	* src/audio/mp3.py:
	Fix regression where genres might end up as ints; use 'Unknown' for
	genre if integer genre is not in the genre table (as per ID3v1.1)

	* src/audio/mp3.py, src/games/snes.py, src/audio/eyeD3/tag.py,
	* src/audio/eyeD3/frames.py, src/factory.py, src/audio/core.py,
	* src/audio/eyeD3/mp3.py, src/video/real.py, src/image/core.py,
	* src/misc/xmlfile.py, src/image/EXIF.py, src/video/flv.py,
	* src/video/mpeg.py:
	Partially revert r4028 and r4032

	Remove all catches of KeyboardInterrupt and SystemExit.

	Try to catch more specific exceptions.

	Catch at most Exception (such as the innter parsing loop).

	* src/factory.py:
	Remove more catch-all exceptions, as well SystemError and
	KeyboardInterrupt exceptions. kaa.metadata is a library first, and
	it's not its place to enforce an exception-handling policy on the
	caller.

	* src/factory.py:
	Remove catch-all exception from factory. This prevents API users from
	catching exceptions themselves. Since they are in a much better
	situation to do so than inside kaa.metadata, let them.

2009-05-17  Jason Tackaberry <tack@urandom.ca>

	* src/video/mpeg.py:
	Fix mpeg problem reported in bug #2392037 from sf tracker.

2009-05-16  Jason Tackaberry <tack@urandom.ca>

	* src/video/asf.py, src/audio/m4a.py, src/video/mkv.py:
	Make m4a, asf, and mkv parsers more robust.

2009-05-14  Jason Tackaberry <tack@urandom.ca>

	* src/audio/pcm.py: Handle undersized file.

	* src/image/bmp.py, src/audio/m4a.py, src/video/mp4.py,
	* src/image/gif.py, src/video/real.py:
	Don't freak out on premature EOF.

2009-03-13  Dirk Meyer <dischi@freevo.org>

	* src/factory.py: increase read limit

2009-02-16  Dirk Meyer <dischi@freevo.org>

	* src/video/mpeg.py: handle some odd mpeg files from mencoder

2009-02-02  Dirk Meyer <dischi@freevo.org>

	* doc/conf.py, src/image/generic.py: svn property update

2009-01-31  Dirk Meyer <dischi@freevo.org>

	* src/image/generic.py: add timestamp and orientation parsing

	* src/__init__.py: prefer our png parser of exiv2

2009-01-30  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py
	* src/image/exiv2.cpp (added)
	* setup.py
	* src/image/generic.py (added):
	Add experimental exiv2 based parser as replacement for all image
	parsers. Disabled in __init__.py for the moment. The key mapping is
	not complete.

2009-01-29  Jason Tackaberry <tack@urandom.ca>

	* src/audio/eyeD3/mp3.py: Replace find_header with custom one.

	* src/audio/mp3.py:
	Attempting to parse id3 tags a second time is not going to make it any
	more  likely to succeed.

2009-01-29  Dirk Meyer <dischi@freevo.org>

	* src/image/EXIF.py: sanity check

2009-01-27  Dirk Meyer <dischi@freevo.org>

	* src/audio/ogg.py: revert changes in logging code

	* src/factory.py, src/audio/ogg.py:
	adjust to syntax of read to actual fix the ogg parser

	* src/factory.py:
	fix crash on ogg parser trying to read up to the end of the file

2008-12-01  Dirk Meyer <dischi@freevo.org>

	* setup.py, MANIFEST.in, NEWS: prepare 0.7.5 release

2008-11-09  Dirk Meyer <dischi@freevo.org>

	* src/core.py: handle strange Canon SLR EXIF data

2008-10-26  Dirk Meyer <dischi@freevo.org>

	* doc/usage.rst: doc update

	* src/__init__.py, src/image/jpg.py, src/video/vcd.py, src/core.py,
	* src/video/core.py:
	cosmetic updates

	* src/disc/ifomodule.c: handle bad subtitle

	* src/video/riff.py:
	check for size < 5 because we substract 4 and read(0) is a bad idea

	* src/video/riff.py: patch for bad files from A C G Mennucc

	* src/factory.py: prevent bad files from using too much IO

2008-10-25  Hans Meine <hans_meine@gmx.net>

	* src/misc/directory.py, src/audio/mp3.py, src/video/mkv.py,
	* src/games/snes.py, src/video/mp4.py, src/image/tiff.py,
	* src/image/core.py, src/disc/core.py, src/disc/CDDB.py,
	* src/games/gameboy.py, src/video/asf.py, src/disc/cdrom.py,
	* src/core.py, src/audio/core.py, src/video/real.py,
	* src/misc/xmlfile.py, src/video/riff.py, src/video/flv.py,
	* src/video/mpeg.py, src/video/core.py:
	another pyflakes-driven import cleanup (BTW: not only removals, also
	some missing imports)

2008-10-19  Jason Tackaberry <tack@urandom.ca>

	* src/image/EXIF.py:
	Make EXIF a bit more robust: fixes parse failures for EXIF test images
	at https://sourceforge.net/project/showfiles.php?group_id=187210

	* src/factory.py:
	When trying all parsers, continue after ParserError rather than
	aborting.

2008-10-18  Dirk Meyer <dischi@freevo.org>

	* doc/conf.py: import version number

2008-10-12  Dirk Meyer <dischi@freevo.org>

	* src/disc/dvd.py, src/video/asf.py, src/image/jpg.py, src/video/vcd.py,
	* src/disc/audio.py, src/video/mkv.py, src/video/mp4.py,
	* src/video/riff.py, src/video/flv.py, src/video/mpeg.py:
	add some doc strings

	* doc/usage.rst (added)
	* doc/conf.py (added)
	* doc/Makefile (added)
	* doc/index.rst (added)
	* doc (added)
	* doc/parser.rst (added):
	Add sphinx doc. The description about the available parsers is
	generated by the parsers doc string ... most parsers have none.

2008-10-10  Dirk Meyer <dischi@freevo.org>

	* src/misc/directory.py, src/disc/dvd.py, src/audio/mp3.py,
	* src/video/mkv.py, setup.py, src/image/core.py, src/disc/core.py,
	* src/video/asf.py, src/audio/pcm.py, src/image/IPTC.py,
	* src/disc/cdrom.py, src/core.py, src/misc/xmlfile.py,
	* src/audio/adts.py, src/video/flv.py, src/video/mpeg.py,
	* src/video/core.py:
	re-indent

2008-10-08  Dirk Meyer <dischi@freevo.org>

	* AUTHORS, ChangeLog.in: update list of authors

2008-10-08  Hans Meine <hans_meine@gmx.net>

	* src/disc/cdrom.py:
	fix missing constant definition CDS_NO_DISC used in error case

	* src/factory.py:
	remove unused import and correct spelling of R_EXTENSION

	* src/audio/mp3.py: add missing 'str_to_unicode' import

2008-09-11  Dirk Meyer <dischi@freevo.org>

	* src/video/flv.py: parse more flv metadata

	* src/disc/audio.py: Fix samplerate, patch by Matthias Reichl

	* src/video/riff.py: Add bitrate patch from Matthias Reichl

	* src/audio/mp3.py: add genre unicode patch from Rodolfo Stangherlin

2008-09-10  Dirk Meyer <dischi@freevo.org>

	* trunk/metadata (added):
	Copy metadata from tags back to trunk. mv is not cp :)

2008-09-09  Dirk Meyer <dischi@freevo.org>

	* trunk/metadata (removed): tag release

2008-09-09  Jason Tackaberry <tack@urandom.ca>

	* AUTHORS, setup.py:
	Self-promotion to maintaner. Looking through svn log, I think I
	qualify by now. :)

2008-09-09  Dirk Meyer <dischi@freevo.org>

	* setup.py, NEWS: prepare 0.7.4 release

2008-08-07  Dirk Meyer <dischi@freevo.org>

	* src/language.py: update svn properties

2008-07-15  Dirk Meyer <dischi@freevo.org>

	* src/image/EXIF.py: update EXIF.py to a newer version

2008-06-29  Jason Tackaberry <tack@urandom.ca>

	* src/disc/ifomodule.c: Test all potential sub tracks.

	* src/disc/dvd.py, src/disc/ifomodule.c:
	Fix broken audio track parsing (sometimes audio tracks that did not
	exist would be included); more accurate audio track ids; add ids to
	subtitle tracks.  The basic logic for the above is from mplayer.
	mminfo and mplayer now agree on track details (at least for my test
	cases).

2008-06-22  Jason Tackaberry <tack@urandom.ca>

	* src/video/real.py: Handle better partially complete real files.

2008-05-13  Dirk Meyer <dischi@freevo.org>

	* src/image/IPTC.py: strip keywords

2008-05-06  Dirk Meyer <dischi@freevo.org>

	* src/factory.py: deactivate http parsing

2008-04-22  Dirk Meyer <dischi@freevo.org>

	* src/video/mpeg.py: try to detect bad mpeg files from ivtv based cards

2008-04-13  Jason Tackaberry <tack@urandom.ca>

	* src/video/mpeg.py: Quick-and-dirty parser for MPEG-ES

	* src/video/flv.py: Don't barf when file is too small.

	* src/video/mp4.py:
	Fix bug where track details would not be properly parsed when an mdat
	or skip atom appeared before a moov/wide/free atom.

	* src/factory.py:
	Reset file pos before each parser; fixes recent regression.

2008-04-08  Jason Tackaberry <tack@urandom.ca>

	* src/core.py, src/video/core.py:
	Add thumbnail attribute to AVCORE; include content size for
	unprintable data.

2008-03-26  Dirk Meyer <dischi@freevo.org>

	* src/video/mp4.py
	* src/video/movlanguages.py (removed):
	move language definitions into mp4.py

2008-03-26  Jason Tackaberry <tack@urandom.ca>

	* src/factory.py:
	Multiple parsers can be registered for the same extension -- fix bug
	where only the last parser registered for a given extension would be
	tested before we resort to brute-forcing all parsers. Now we first try
	all parsers registered for the given extension before trying
	everything else.

	* src/video/asf.py: Consolidate unpacks.

	* src/video/asf.py:
	Some reformatting to use longer lines; correct bitrate applied to all
	streams (audio and video); fps support for video streams; per-stream
	language attribute (not tested as I don't have a multi-language ASF);
	metadata object attached to approprate stream (rather than global);
	don't set title/artist/caption/etc to empty string but rather use None
	instead; don't output unparsed object contents or else we might dump
	8-bit garbage.

2008-03-25  Jason Tackaberry <tack@urandom.ca>

	* src/video/asf.py:
	Temporary kludge to make ASF parser not broken for language

	* src/language.py:
	Raise an exception if the parser sets language to anything other than
	a string; take the first three letters from language code, so en-US
	will translate properly to English.

2008-03-24  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkv.py:
	Set language to None if language is not set or is set to 'und'.

	* src/language.py:
	Change language name when language code is unknown to 'Unknown
	(<code>)'; if language code is None, then return None back instead of
	Undetermined.

2008-03-24  Dirk Meyer <dischi@freevo.org>

	* setup.py, NEWS: prepare 0.7.3 release

2008-03-23  Jason Tackaberry <tack@urandom.ca>

	* src/language.py (added)
	* src/core.py:
	language attribute is now a human readable language, and the language
	code is stored in the langcode attribute. This is resolved during
	finalize, similar to fourcc->codec.

	* bin/mminfo:
	More output cleanup: crop filename to terminal width rather than
	assuming 70; display more meaningful error than 'No match found' if
	parse fails.

	* bin/mminfo: Clean up output a bit.

	* src/factory.py: Use kaa.utils.Singleton.

	* src/audio/flac.py:
	Refactor flac header to attribute code; also adds trackof attribute.

	* bin/mminfo: Display usage info when no files are specified.

	* src/audio/ac3.py: Support length for raw ac3 streams.

	* src/audio/eyeD3/tag.py, src/audio/ogg.py: Float times for mp3 and ogg.

	* src/audio/flac.py:
	Missing shift (high nibble is usually zero so I didn't notice this in
	testing).

	* src/audio/flac.py: Support length in flac files.

2008-03-22  Jason Tackaberry <tack@urandom.ca>

	* src/video/riff.py:
	Do not add bitrate value. It is almost always wrong, and it's better
	to provide no value than a wrong value.

2008-03-21  Jason Tackaberry <tack@urandom.ca>

	* src/disc/dvd.py: More correct detection of DVD directory.

2008-03-09  Jason Tackaberry <tack@urandom.ca>

	* src/disc/audio.py:
	Patch from Andrew Jeffery <short_rz@internode.on.net>; adds year value
	to disc and track information for audio CDs.

2008-02-24  Dirk Meyer <dischi@freevo.org>

	* src/video/asf.py: handle wma files as MEDIA_AUDIO

2008-02-13  Dirk Meyer <dischi@freevo.org>

	* src/misc/directory.py, src/image/IPTC.py, src/image/png.py,
	* src/core.py:
	strutils updates

2008-02-06  Dirk Meyer <dischi@freevo.org>

	* contrib (added)
	* src/audio/eyeD3/frames.py
	* contrib/eyeD3-frames-patch.diff (added):
	fix eyeD3 endless loop patch, needs to be send upstream

	* src/audio/eyeD3/tag.py, src/audio/eyeD3/frames.py,
	* src/audio/eyeD3/__init__.py, src/audio/eyeD3/mp3.py,
	* src/audio/eyeD3/utils.py:
	sync with eyeD3 0.6.14

2008-02-04  Dirk Meyer <dischi@freevo.org>

	* setup.py, NEWS: release kaa.metadata 0.7.2

2008-01-21  Jason Tackaberry <tack@urandom.ca>

	* src/image/png.py:
	Sync my local tree, this likely fixed a crash on one of my files. :)

2008-01-16  Dirk Meyer <dischi@freevo.org>

	* src/disc/vcd.py: better (S)VCD detection

2008-01-12  Dirk Meyer <dischi@freevo.org>

	* src/disc/vcd.py: new VCD detection code

2008-01-07  Jason Tackaberry <tack@urandom.ca>

	* src/image/jpg.py:
	More gracefully handle malformed exif datetime string.

2007-12-27  Dirk Meyer <dischi@freevo.org>

	* src/image/jpg.py: check for 'EXIF DateTimeOriginal

	* src/misc/directory.py: only set image if it exists

2007-12-25  Dirk Meyer <dischi@freevo.org>

	* setup.py, NEWS: prepare bugfix release 0.7.1

2007-12-23  Dirk Meyer <dischi@freevo.org>

	* src/factory.py: fix indention for magic check

2007-12-22  Dirk Meyer <dischi@freevo.org>

	* setup.py, NEWS: metadata for 0.7.0 release

2007-12-21  Dirk Meyer <dischi@freevo.org>

	* src/disc/vcd.py: Fix cdrom module function calls

2007-12-11  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py, src/factory.py:
	add support to choose a parser by the first bytes of the file

2007-09-17  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkv.py: Obvious bug.

2007-09-16  Dirk Meyer <dischi@freevo.org>

	* src/video/asf.py, src/audio/mp3.py, src/image/IPTC.py,
	* src/image/jpg.py, src/video/mkv.py, src/audio/flac.py,
	* src/video/mp4.py, src/core.py, src/video/ogm.py, src/audio/core.py,
	* src/video/riff.py, src/audio/ogg.py:
	split date into userdate (str) and timestamp (int)

2007-09-11  Dirk Meyer <dischi@freevo.org>

	* src/video/riff.py: read correct date/time string

2007-09-07  Dirk Meyer <dischi@freevo.org>

	* README, src/image/jpg.py, src/video/mkv.py, src/video/mp4.py, TODO,
	* src/video/riff.py:
	try to make date an int with seconds since epoch

	* src/core.py: do not overwrite already set values

2007-09-03  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkv.py:
	[ 1782272 ] matroska chapters bad info Fixes EBML parsing bug (not
	specifically related to chapters).

2007-08-11  Dirk Meyer <dischi@freevo.org>

	* src/image/IPTC.py: replace artist with author for images

	* src/image/IPTC.py: use credit as artist

2007-07-02  Dirk Meyer <dischi@freevo.org>

	* src/core.py: fix crash on bad data

2007-06-27  Jason Tackaberry <tack@urandom.ca>

	* src/audio/flac.py, src/audio/ogg.py: Mimetype fixes.

2007-06-18  Dirk Meyer <dischi@freevo.org>

	* src/video/flv.py: do not crash on bad files

2007-06-16  Dirk Meyer <dischi@freevo.org>

	* src/video/mkv.py: revert bad debug checkin

	* src/audio/mp3.py, src/video/mkv.py:
	add more tags and fix value setting (patch by orbit7)

2007-05-27  Jason Tackaberry <tack@urandom.ca>

	* src/core.py:
	URL must not be unicode because it represents filename, not a
	printable string.

	* src/misc/directory.py: Add mimetype for directory.

2007-05-20  Dirk Meyer <dischi@freevo.org>

	* bin/mminfo: fix path

	* src/misc/directory.py: support folder.jpg

	* setup.py: make it work without Python.h

2007-04-22  Dirk Meyer <dischi@freevo.org>

	* setup.py:
	Import distribution code from distribution.core and do not nor import
	core.py at distribution/__init__.py. This works around a bug making
	python distutils a requirenment to run Freevo 1.7.

2007-04-18  Dirk Meyer <dischi@freevo.org>

	* src/core.py: make sure image is not unicode (filename)

	* setup.py, NEWS: release

2007-04-16  Dirk Meyer <dischi@freevo.org>

	* src/video/mkv.py: do not crash when chap.name is unicode

2007-04-05  Dirk Meyer <dischi@freevo.org>

	* src/video/mkv.py: mark file as corrupt if the index is missing

2007-03-28  Dirk Meyer <dischi@freevo.org>

	* AUTHORS, NEWS: metadata update

	* kaa-metadata.ebuild (removed): remove ebuild generation

	* src/__init__.py: check cd/unknown at the end

2007-03-27  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py: import VERSION into module root __init__

2007-03-23  Dirk Meyer <dischi@freevo.org>

	* ChangeLog.in, trunk/metadata, src, MANIFEST.in:
	Improve MANIFEST and ChangeLog file support and set svn ignore
	properties to ignore generated files.

	* ChangeLog.in: change Tack's mail address

	* MANIFEST.in
	* ChangeLog.in (added):
	create ChangeLog.in and add ChangeLog to MANIFEST

	* NEWS: update NEWS file

2007-03-22  Jason Tackaberry <tack@urandom.ca>

	* src/disc/dvd.py, src/misc/directory.py, src/image/jpg.py,
	* src/audio/flac.py, src/image/png.py, src/audio/ac3.py,
	* src/image/tiff.py, src/audio/ogg.py, src/video/asf.py,
	* src/audio/m4a.py, src/disc/audio.py, src/video/real.py,
	* src/video/riff.py, src/audio/adts.py, src/audio/webradio.py,
	* src/video/mpeg.py, src/__init__.py, src/image/bmp.py,
	* src/audio/mp3.py, src/video/mkv.py, src/games/snes.py,
	* src/video/mp4.py, src/factory.py, src/games/gameboy.py,
	* src/audio/pcm.py, src/video/vcd.py, src/image/gif.py,
	* src/video/ogm.py, src/disc/data.py, src/misc/xmlfile.py,
	* src/video/flv.py, src/disc/vcd.py:
	Call each parser class Parser and import that specifically when
	loading a parser. Do not import disc.dvd when determining scheme from
	an info object; replace tabs with spaces in gameboy parser; use exec()
	instead of __import__() when importing the parser modules (lame, but
	__import__ didn't work with relative imports); add a FIXME about
	KeyboardInterrupt and SystemExit exceptions.

2007-03-21  Jason Tackaberry <tack@urandom.ca>

	* src/audio/eyeD3/tag.py:
	Don't be so zealous in searching for an mp3 frame header when the file
	extension is not mp3 -- significantly reduces false positives for non-
	mp3 files.

	* src/audio/eyeD3/tag.py: Slightly more robust.

	* src/disc/dvd.py, src/misc/directory.py, src/image/jpg.py,
	* src/audio/flac.py, src/image/png.py, src/audio/ac3.py,
	* src/image/tiff.py, src/disc/core.py, src/audio/ogg.py,
	* src/video/asf.py, src/audio/m4a.py, src/disc/audio.py,
	* src/video/real.py, src/audio/adts.py, src/video/riff.py,
	* src/audio/webradio.py, src/video/mpeg.py, src/__init__.py,
	* src/image/bmp.py, src/audio/mp3.py, src/video/mkv.py,
	* src/games/snes.py, src/video/mp4.py, src/factory.py,
	* src/image/core.py, src/games/gameboy.py, src/audio/pcm.py,
	* src/video/vcd.py, src/games/core.py, src/audio/eyeD3/tag.py,
	* src/image/gif.py, src/video/ogm.py, src/audio/core.py,
	* src/misc/xmlfile.py, src/disc/data.py, src/video/flv.py,
	* src/disc/vcd.py, src/video/core.py:
	Import parsers on-demand -- significantly speeds up startup time when
	the correct parsers can be discovered by file extensions; ignore DTDs
	in XML files; MP3 parser should not fail just because file extension
	is not .mp3

2007-03-20  Dirk Meyer <dischi@freevo.org>

	* src/audio/mp3.py: read used vbr and not cbr from header

2007-03-19  Dirk Meyer <dischi@freevo.org>

	* ChangeLog (removed)
	* NEWS (added):
	rename ChangeLog to NEWS and update it

	* src/__init__.py, setup.py: remove libxml2 dependency

	* src/misc/xmlfile.py: use sax parser for xmlfile

	* src/factory.py
	* src/misc/xml.py (removed)
	* src/misc/xmlfile.py (added):
	rename xml.py to xmlfile.py to import xml.sax

	* src/image/jpg.py: remove libxml2 dep from jpg parser

	* src/misc/directory.py, src/image/core.py:
	replace kaa.xml in bins parser with xml.sax

2007-03-16  Dirk Meyer <dischi@freevo.org>

	* src/audio/mp3.py, src/video/riff.py: change wave and mp3 mimetype

	* src/misc/directory.py: fix icon from .directory

2007-03-11  Dirk Meyer <dischi@freevo.org>

	* ChangeLog (added):
	add ChangeLog for released modules, please keep it up-to-date

2007-03-09  Jason Tackaberry <tack@urandom.ca>

	* src/fourcc.py, src/video/mkv.py, src/core.py:
	Improve fourcc/codec handling.

2007-03-08  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkv.py: Add AAC to fourcc map.

	* src/video/mkv.py:
	Fix track language being reset for each common track element.

2007-03-07  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkv.py:
	Do not convert chapter name to string as it may be unicode.

2007-02-26  Jason Tackaberry <tack@urandom.ca>

	* setup.py
	* setup.cfg (added):
	Make bdist_rpm work again; prefix RPM package names with python-;
	remove unneeded spec file from kaa.imlib2.

2007-02-22  Jason Tackaberry <tack@urandom.ca>

	* src/factory.py:
	Make DVDs work again by using dvd:// instead of file:// for url scheme
	for DVD ISOs or devices; handle unsupported url schemes more
	gracefully.

2007-02-11  Dirk Meyer <dischi@freevo.org>

	* src/audio/ogg.py: fix bitrate

2007-02-06  Dirk Meyer <dischi@freevo.org>

	* setup.py: check for deps

2007-02-05  Dirk Meyer <dischi@freevo.org>

	* src/video/mp4.py (added)
	* src/video/mov.py (removed)
	* src/factory.py:
	rename mov.py to mp4.py

	* src/video/asf.py: fix crash on encrypted files

2007-01-26  Dirk Meyer <dischi@freevo.org>

	* src/audio/m4a.py, AUTHORS: m4a patch from Jose Taza

2007-01-21  Dirk Meyer <dischi@freevo.org>

	* TODO: update TODO

2007-01-19  Dirk Meyer <dischi@freevo.org>

	* setup.py: set version higher than last release

2007-01-18  Duncan Webb <duncan@freevo.org>

	* src/disc/CDDB.py:
	[ 1638258 ] Unicode support in CDDB Patch from Guillaume Proux applied
	to change the protocol to 6 for Unicode support.

2007-01-10  Dirk Meyer <dischi@freevo.org>

	* src/video/ogm.py: fix chapter parser, incr. MAXITERATIONS

	* src/video/ogm.py: fix length crash for subtitles

2007-01-02  Jason Tackaberry <tack@urandom.ca>

	* src/video/riff.py: Guess length of wave file; add FIXMEs

	* src/fourcc.py, src/video/riff.py:
	Allow fourcc resolution in finalize for wav codec.

	* src/audio/pcm.py, src/video/riff.py:
	Support in riff parser for wave files; .wav extension should go to the
	Riff parser and not pcm.

	* bin/mminfo: Print useful message when debug level missing.

2007-01-02  Dirk Meyer <dischi@freevo.org>

	* src/fourcc.py, src/games/core.py, src/disc/cdrom.py,
	* src/audio/core.py, src/video/flv.py, src/video/core.py:
	prop set

2006-12-30  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkv.py:
	Don't abort altogether when finding a corrupt mkv; keep what we have
	and just stop parsing.

	* setup.py:
	Better support for RPM packaging via distutils bdist_rpm command.

2006-12-29  Dirk Meyer <dischi@freevo.org>

	* src/image/core.py: add author to image core

	* src/image/EXIF.py: prevent crash on bad maker note

	* src/image/IPTC.py: some name changes

	* src/video/mov.py: prevent crash on broken files and support skip atim

2006-12-28  Jason Tackaberry <tack@urandom.ca>

	* src/video/core.py:
	Remove unnecessary loop in finalize (used to be responsible for
	converting all lengths to int, which is not something kaa.metadata
	should do); if container length is undefined, pick largest of is
	tracks, rather than the first track.

	* src/disc/dvd.py: Remove redundant 'id' key (added to core)

	* src/video/mkv.py, src/audio/core.py, src/video/core.py:
	Add id attribute to audio, video, subtitle, and chapter tracks. Add
	support for id in mkv parser.

	* src/video/asf.py, src/video/mkv.py, src/video/real.py,
	* src/video/core.py:
	Make mkv parser more robust with broken files; length property should
	be float, not int.

2006-12-28  Duncan Webb <duncan@freevo.org>

	* src/core.py:
	Patch from Ryan Roth applied to ignore the url when it does not exist

2006-12-23  Duncan Webb <duncan@freevo.org>

	* src/video/mkv.py:
	When the inbuf is too small the calculation of the id fails; added a
	length check to prevent this error.

2006-12-22  Dirk Meyer <dischi@freevo.org>

	* src/video/flv.py: add basic metadata parser

2006-12-15  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py, src/disc/cdrom.py, src/disc/core.py:
	change cdrom access code again

	* src/video/mkv.py: handle length=0

	* src/core.py, src/audio/core.py, src/video/core.py:
	move fourcc handling into core.Media

	* src/__init__.py
	* src/misc/directory.py
	* src/games/core.py
	* src/factory.py
	* src/core.py (added)
	* src/audio/core.py
	* src/disc/core.py
	* src/image/core.py
	* src/mediainfo.py (removed)
	* src/misc/xml.py
	* src/video/core.py:
	rename mediainfo to core

	* src/__init__.py
	* src/disc/audio.py
	* src/disc/cdinfo.py (removed)
	* src/disc/cdrom.py (added)
	* src/disc/core.py
	* src/disc/vcd.py:
	rename cdinfo to cdrom

	* src/__init__.py, src/disc/dvd.py, src/disc/audio.py,
	* src/disc/cdinfo.py, src/factory.py, src/disc/core.py,
	* src/disc/data.py, src/disc/vcd.py:
	Bufixes

	* src/__init__.py
	* src/disc/dvd.py
	* src/misc/directory.py
	* src/disc/ifomodule.c
	* src/factory.py
	* setup.py
	* src/image/core.py
	* src/disc/core.py
	* src/disc/DiscID.py (removed)
	* src/disc/audio.py
	* src/disc/cdinfo.py (added)
	* src/games/core.py
	* src/disc/cdrommodule.c
	* src/audio/core.py
	* src/misc/xml.py
	* src/mediainfo.py
	* src/video/core.py
	* src/disc/vcd.py:
	More updates and code move. Some code using kaa.metadata could be
	broken now, needs to be checked.

	* src/disc/DiscID.py: oops

	* src/disc/dvd.py (added)
	* src/misc/directory.py (added)
	* src/video/ogminfo.py (removed)
	* src/disc/datainfo.py (removed)
	* src/video/flvinfo.py (removed)
	* src/disc/core.py (added)
	* src/disc/vcdinfo.py (removed)
	* src/disc/dvdinfo.py (removed)
	* src/video/asf.py (added)
	* src/disc/discinfo.py (removed)
	* src/disc/audio.py (added)
	* src/misc/dirinfo.py (removed)
	* src/video/real.py (added)
	* src/misc/xml.py (added)
	* src/video/asfinfo.py (removed)
	* src/video/riff.py (added)
	* src/video/mpeg.py (added)
	* src/disc/audioinfo.py (removed)
	* src/video/mkv.py (added)
	* src/video/realinfo.py (removed)
	* src/factory.py
	* src/misc/xmlinfo.py (removed)
	* src/video/mov.py (added)
	* src/video/riffinfo.py (removed)
	* src/video/mpeginfo.py (removed)
	* src/video/mkvinfo.py (removed)
	* src/disc/DiscID.py
	* src/video/vcd.py (added)
	* src/video/movinfo.py (removed)
	* src/video/ogm.py (added)
	* src/disc/data.py (added)
	* src/video/flv.py (added)
	* src/video/core.py (added)
	* src/disc/vcd.py (added)
	* src/video/vcdinfo.py (removed):
	update the last *info files

	* src/disc/audioinfo.py
	* src/audio/mp3.py (added)
	* src/audio/flac.py (added)
	* src/factory.py
	* src/audio/ac3.py (added)
	* src/audio/adtsinfo.py (removed)
	* src/audio/webradioinfo.py (removed)
	* src/audio/ogg.py (added)
	* src/audio/ID3.py (added)
	* src/audio/id3.py (removed)
	* src/audio/pcm.py (added)
	* src/audio/flacinfo.py (removed)
	* src/audio/m4a.py (added)
	* src/audio/ac3info.py (removed)
	* src/audio/eyed3info.py (removed)
	* src/audio/ogginfo.py (removed)
	* src/audio/core.py (added)
	* src/mediainfo.py
	* src/audio/adts.py (added)
	* src/audio/pcminfo.py (removed)
	* src/audio/webradio.py (added)
	* src/audio/m4ainfo.py (removed):
	Cleanup audio subdir

	rename fooinfo.py to foo.py

	rename FooInfo class to Foo

	create core module

	* setup.py: update version, many changes since last release

	* src/__init__.py
	* src/image/bmp.py (added)
	* src/image/jpg.py (added)
	* src/image/gifinfo.py (removed)
	* src/games/snes.py (added)
	* src/image/png.py (added)
	* src/factory.py
	* src/image/tiff.py (added)
	* src/image/core.py
	* src/image/bmpinfo.py (removed)
	* src/image/jpginfo.py (removed)
	* src/games/gameboy.py (added)
	* src/games/snesinfo.py (removed)
	* src/image/__init__.py
	* src/image/pnginfo.py (removed)
	* src/games/core.py (added)
	* src/image/tiffinfo.py (removed)
	* src/image/gif.py (added)
	* src/games/gameboyinfo.py (removed)
	* src/mediainfo.py:
	Start with the next round of cleanup:

	rename extinfo.py to ext.py

	rename FooInfo class to Foo

	use core module in games

	only import from core in image and games

	* src/mediainfo.py: fix double trackno key

2006-12-12  Dirk Meyer <dischi@freevo.org>

	* src/video/mpeginfo.py: do not clean end if not found in one frame

	* src/video/mpeginfo.py: fix length == -1, I hope nothing got broken

	* src/video/mpeginfo.py: handle bad length

2006-12-12  Jason Tackaberry <tack@urandom.ca>

	* src/video/asfinfo.py:
	Fix exception when encountering unknown header in asf file.

2006-12-11  Jason Tackaberry <tack@urandom.ca>

	* src/factory.py: Support dvd scheme

2006-12-10  Dirk Meyer <dischi@freevo.org>

	* src/image/core.py: do not override keys, add to them

	* src/mediainfo.py: make sure we always have self.media

	* src/mediainfo.py: fix missing _finalize calls

2006-12-09  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py, src/disc/discinfo.py, src/mediainfo.py:
	fix self.media and add MEDIA_DISC

2006-12-08  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py: expose MEDIA_* to the outside

	* src/image/gifinfo.py, src/video/ogminfo.py, src/disc/datainfo.py,
	* src/video/flvinfo.py, src/disc/vcdinfo.py, src/disc/dvdinfo.py,
	* src/image/jpginfo.py, src/audio/flacinfo.py, src/image/pnginfo.py,
	* src/audio/ac3info.py, src/misc/dirinfo.py, src/audio/eyed3info.py,
	* src/image/tiffinfo.py, src/audio/ogginfo.py, src/mediainfo.py,
	* src/video/asfinfo.py, src/audio/m4ainfo.py, src/disc/audioinfo.py,
	* src/video/realinfo.py, src/misc/xmlinfo.py, src/factory.py,
	* src/audio/adtsinfo.py, src/video/riffinfo.py,
	* src/audio/webradioinfo.py, src/image/core.py, src/video/mpeginfo.py,
	* src/image/bmpinfo.py, src/video/mkvinfo.py, src/games/snesinfo.py,
	* src/video/movinfo.py, src/games/gameboyinfo.py, src/audio/pcminfo.py,
	* src/video/vcdinfo.py:
	clean up media/type handling

2006-12-08  Jason Tackaberry <tack@urandom.ca>

	* src/factory.py: Tabs->spaces

	* src/disc/ifomodule.c, src/disc/dvdinfo.py, src/mediainfo.py:
	Better chapter support in dvd parser; fix memory leaks in ifomodule.

2006-12-07  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkvinfo.py:
	Significant rework of mkv parser: much more correct.

2006-12-07  Dirk Meyer <dischi@freevo.org>

	* src/games/snesinfo.py: do not detect too much false positives

	* src/video/riffinfo.py, src/mediainfo.py: riffparser cleanup

	* src/disc/audioinfo.py, src/video/movinfo.py, src/video/realinfo.py,
	* src/disc/datainfo.py, src/video/flvinfo.py, src/disc/vcdinfo.py,
	* src/video/mpeginfo.py, src/disc/dvdinfo.py, src/mediainfo.py,
	* src/video/vcdinfo.py:
	remove unneeded context var

	* src/video/asfinfo.py: fix mime type

	* src/fourcc.py, src/video/movinfo.py: support mpeg4/3gp container

	* src/factory.py
	* src/video/flvinfo.py (added):
	add flash video parser

	* src/fourcc.py: rename MPEG fourcc

	* src/mediainfo.py: add mime

	* src/video/mpeginfo.py: fourcc codec support

	* src/video/movinfo.py: better track type detection

2006-12-07  Jason Tackaberry <tack@urandom.ca>

	* bin/mminfo, src/mediainfo.py: Format output in a tree style.

	* src/disc/dvdinfo.py: Remove redundant keys.

2006-12-06  Jason Tackaberry <tack@urandom.ca>

	* src/disc/dvdinfo.py: Better form; remove spurious semicolons

2006-12-06  Dirk Meyer <dischi@freevo.org>

	* src/disc/dvdinfo.py: make aspect float

	* src/disc/dvdinfo.py: use fourcc codes for dvd audio

	* src/disc/ifomodule.c, src/fourcc.py, src/disc/dvdinfo.py,
	* src/mediainfo.py:
	use fourcc codes for dvd audio

	* src/fourcc.py: add missing comma

	* src/fourcc.py: more renamings

2006-12-06  Jason Tackaberry <tack@urandom.ca>

	* src/fourcc.py:
	Use more generic description for h264 fourcc (x264 uses this fourcc).

2006-12-06  Dirk Meyer <dischi@freevo.org>

	* src/mediainfo.py: fix MusicInfo

	* src/__init__.py, src/video/ogminfo.py, src/factory.py,
	* src/video/riffinfo.py, src/audio/webradioinfo.py, src/image/core.py,
	* src/video/mpeginfo.py, src/disc/dvdinfo.py, src/image/jpginfo.py,
	* bin/mminfo, src/video/mkvinfo.py, src/disc/discinfo.py,
	* src/image/IPTC.py, src/fourcc.py, src/image/pnginfo.py,
	* src/audio/flacinfo.py, src/video/movinfo.py, src/misc/dirinfo.py,
	* src/image/tiffinfo.py, src/audio/eyed3info.py, TODO,
	* src/audio/ogginfo.py, src/mediainfo.py, src/video/asfinfo.py:
	Major cleanup of the code, it was way to ugly. The __dict__ access is
	now gone, all attributes are class member functions. Use the table
	code when possible to avoid duplicate code. It is also possible now to
	convert the MediaInfo to a dict and back.

	* src/audio/ac3info.py, src/audio/eyed3info.py: add fourcc codes

	* src/fourcc.py, src/mediainfo.py: also print fourcc code

	* src/video/mkvinfo.py, src/video/movinfo.py, src/video/ogminfo.py,
	* src/video/riffinfo.py, src/video/mpeginfo.py, src/mediainfo.py,
	* src/video/asfinfo.py:
	Update fourcc handling. The codec is now stored in is four or two byte
	code and only resolved when transforming the object to unicode or
	string. This will make it possible for kaa.popcorn to access the real
	fourcc id.

	* src/fourcc.py (added)
	* src/video/fourcc.py (removed):
	Move FOURCC list to main src dir and update it. Rename the variables
	to TWOCC and FOURCC.

2006-12-03  Duncan Webb <duncan@freevo.org>

	* src/video/mpeginfo.py:
	When the buffer is empty, it causes a crash in ReadSCRMpeg1 This fix
	ensures that crash can't happen.

2006-12-02  Duncan Webb <duncan@freevo.org>

	* src/video/mpeginfo.py: Replaced tabs with spaces

2006-11-27  Dirk Meyer <dischi@freevo.org>

	* src/video/mkvinfo.py: string (ascii) und utf-8 fixes

	* src/mediainfo.py: also correct data in tracks

2006-11-26  Dirk Meyer <dischi@freevo.org>

	* src/image/gifinfo.py, src/video/ogminfo.py, src/disc/datainfo.py,
	* src/disc/vcdinfo.py, src/disc/dvdinfo.py, src/image/jpginfo.py,
	* src/audio/id3.py, src/disc/discinfo.py, src/image/IPTC.py,
	* src/image/pnginfo.py, src/audio/flacinfo.py, src/audio/ac3info.py,
	* src/misc/dirinfo.py, src/image/tiffinfo.py, src/audio/eyed3info.py,
	* src/video/fourcc.py, src/audio/ogginfo.py, src/video/asfinfo.py,
	* src/mediainfo.py, src/video/movlanguages.py, src/audio/m4ainfo.py,
	* src/__init__.py, src/disc/audioinfo.py, src/video/realinfo.py,
	* src/misc/xmlinfo.py, src/factory.py, src/audio/adtsinfo.py,
	* src/video/riffinfo.py, setup.py, src/audio/webradioinfo.py,
	* src/image/core.py, src/video/mpeginfo.py, src/image/bmpinfo.py,
	* bin/mminfo, src/video/movinfo.py, src/audio/pcminfo.py,
	* src/video/vcdinfo.py:
	update my mail address

	* src/image/gifinfo.py, src/video/ogminfo.py, src/disc/datainfo.py,
	* src/disc/vcdinfo.py, src/disc/dvdinfo.py, src/image/jpginfo.py,
	* src/audio/id3.py, src/disc/discinfo.py, src/image/IPTC.py,
	* src/image/pnginfo.py, src/audio/flacinfo.py, src/audio/ac3info.py,
	* src/misc/dirinfo.py, src/image/tiffinfo.py, src/audio/eyed3info.py,
	* src/video/fourcc.py, src/audio/ogginfo.py, src/video/asfinfo.py,
	* src/mediainfo.py, MANIFEST.in, src/audio/m4ainfo.py,
	* src/video/movlanguages.py, src/__init__.py, src/disc/audioinfo.py,
	* src/video/realinfo.py, src/misc/xmlinfo.py, src/factory.py,
	* src/audio/adtsinfo.py, src/video/riffinfo.py, setup.py,
	* src/audio/webradioinfo.py, src/image/core.py, src/video/mpeginfo.py,
	* src/image/bmpinfo.py, README, src/video/mkvinfo.py,
	* src/games/snesinfo.py, src/video/movinfo.py, src/games/gameboyinfo.py,
	* src/audio/pcminfo.py, src/video/vcdinfo.py:
	prepare for first release

2006-11-17  Jason Tackaberry <tack@urandom.ca>

	* src/audio/eyeD3/tag.py: Offset wasn't right when n_chunks > 0

	* src/audio/eyeD3/tag.py, src/audio/eyeD3/mp3.py:
	Merge back changes from r2012 that were lost due to eyeD3 upgrade; fix
	for Xing header.

2006-11-17  Duncan Webb <duncan@freevo.org>

	* src/disc/ifomodule.c: Fixed void prototype warning for gcc-4.1.1

	* src/audio/eyeD3/tag.py, src/audio/eyeD3/frames.py,
	* src/audio/eyeD3/__init__.py, src/audio/eyeD3/mp3.py:
	Upgraded from 0.6.9 to 0.6.11 This version seems more robust

2006-11-16  Dirk Meyer <dischi@freevo.org>

	* kaa-metadata.ebuild (added): add ebuild templates

2006-11-14  Dirk Meyer <dischi@freevo.org>

	* src/factory.py: IOError may be ok

2006-11-09  Jason Tackaberry <tack@urandom.ca>

	* src/factory.py, src/video/vcdinfo.py:
	When parser determined from extension fails, don't retry that parser
	again when we try all parsers, because it obviously isn't going to
	work; only read up to 300 bytes for vcd parser -- significant
	performance increase when large file does not contain newline.

	* src/audio/eyeD3/tag.py, src/audio/eyeD3/mp3.py:
	Merge patch from bug #1568261 with some changes: should continue to
	work with Xing headers (untested); gives up after 300KB if no header
	is found (mplayer gives up after 30K); read 32k chunks instead of 4k.

	* src/video/riffinfo.py: Bug fixes for detecting aspect in VOL header.

2006-11-08  Jason Tackaberry <tack@urandom.ca>

	* AUTHORS: Add myself to AUTHORS file.

	* src/video/mpeginfo.py: Rounding should not be done here, either.

	* src/video/riffinfo.py: Rounding should not be done here.

	* src/video/riffinfo.py: Small cleanup

	* src/video/riffinfo.py:
	Support reading aspect ratio stored in VOL header in mpeg4 stream. The
	mpeg4 header parsing logic could conceivably be abstracted as it is
	container agnostic, but in practice I think this isn't very useful for
	containers other than AVI. Few encoders actually store aspect info in
	the mpeg4 stream, but mencoder is one that does.

2006-11-07  Jason Tackaberry <tack@urandom.ca>

	* src/video/mpeginfo.py:
	aspect should be a float value, not a string. Fixes mpeg parser.

2006-10-29  Dirk Meyer <dischi@freevo.org>

	* src/misc/dirinfo.py: add full path to images

2006-10-03  Dirk Meyer <dischi@freevo.org>

	* src/image/core.py, src/image/jpginfo.py:
	support image rotation info in exif tag

2006-09-22  Dirk Meyer <dischi@freevo.org>

	* src/misc/dirinfo.py: read name and comment from .directory file

2006-08-05  Dirk Meyer <dischi@freevo.org>

	* src/image/EXIF.py: fix bug with two images I have

	* src/mediainfo.py, src/image/jpginfo.py:
	exif results are no strings, convert them

	* src/image/jpginfo.py: do not save sxm comments

	* TODO: update TODO

	* src/mediainfo.py: convert strings to unicode and nothing more

	* src/image/jpginfo.py: fix IPTC handling, prepare for XMP

	* src/image/tiffinfo.py: adjust to iptc parser changes

	* src/image/IPTC.py
	* src/image/iptcinfo.py (removed):
	switch back from iptcinfo to our own parser

2006-08-02  Dirk Meyer <dischi@freevo.org>

	* src/video/riffinfo.py:
	read date and product (tested with videos from a Casio S500)

2006-07-30  Dirk Meyer <dischi@freevo.org>

	* src/mediainfo.py: inherit from base

	* TODO: add some links

	* src/mediainfo.py: fix debug

2006-07-29  Dirk Meyer <dischi@freevo.org>

	* src/image/jpginfo.py: do not crash on bad IPTC

2006-07-23  Dirk Meyer <dischi@freevo.org>

	* TODO: the code is a mess

	* src/factory.py, src/mediainfo.py: remove some more attributes

	* src/table.py (removed)
	* src/mediainfo.py:
	remove table stuff (since I already removed the i18n code). It never
	worked anyway

	* src/video/mkvinfo.py
	* i18n (removed)
	* src/audio/eyed3info.py
	* src/mediainfo.py:
	rename cover to thumbnail to unify attribute names

	* bin/mminfo, src/mediainfo.py: small cleanups/bugfixes

	* src/image/core.py: add city

	* TODO: update

	* src/image/iptcinfo.py (added)
	* src/image/jpginfo.py:
	add better ipc info

2006-07-16  Dirk Meyer <dischi@freevo.org>

	* src/audio/adtsinfo.py: set missing properties

	* src/factory.py
	* src/audio/adtsinfo.py (added):
	detect adts aac files

2006-07-13  Jason Tackaberry <tack@urandom.ca>

	* src/misc/xmlinfo.py: Some catches for malformed xml files.

2006-07-13  Dirk Meyer <dischi@freevo.org>

	* src/factory.py: add code to only scan on extention

	* src/disc/discinfo.py: handle fd open failure

2006-07-10  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkvinfo.py: Matroska fixes.

2006-07-09  Dirk Meyer <dischi@freevo.org>

	* src/audio/eyed3info.py, src/factory.py, src/mediainfo.py:
	rename raw_image to thumbnail

2006-05-26  Jason Tackaberry <tack@urandom.ca>

	* src/disc/ifomodule.c: Fix for copmiling on x86_64

2006-04-29  Jason Tackaberry <tack@urandom.ca>

	* src/video/mkvinfo.py:
	Fix bug with certain floating point values; fix bug with durations not
	being computed correctly in all cases; fix bug with dates (they are
	relative start of millenium according to spec)

	* src/video/mkvinfo.py, src/mediainfo.py:
	Fixed a few bugs and added several more features to matroska parser:
	title and date attributes, new cover attribute which is exposed as an
	imlib2 image, chapter support, add title and track number to
	individual tracks; created a SubtitleInfo class and create
	SubtitleInfo objects for the subtitles list (some of the other parsers
	will have to be updated); usurped maintainership of matroska parser.

2006-04-26  Jason Tackaberry <tack@urandom.ca>

	* src/audio/eyed3info.py: Only ignore UnicodeError exceptions.

	* src/audio/eyed3info.py:
	Grip unicode bug workaround; dischi, please test this one of your mp3s
	that you have encoded with grip but have corrected the encoding flag.

	* bin/mminfo: Don't assume latin-1

	* src/image/pnginfo.py: Support comment meta tag as comment attribute

	* src/video/riffinfo.py, src/mediainfo.py, src/video/asfinfo.py:
	Some fourcc stuff I forgot to check in ages ago :)

	* src/video/mkvinfo.py: Fix matroska parser; clean up some of the code.

2006-04-25  Jason Tackaberry <tack@urandom.ca>

	* src/audio/eyeD3/tag.py: Don't use unicode objects for filenames

	* src/image/jpginfo.py: Support comment field in jpeg header

	* src/image/EXIF.py: See comment.

	* src/misc/xmlinfo.py: Free xml doc

	* src/misc/xmlinfo.py:
	Don't use SAX parser -- workaround a segv in libxml2 python bindings
	with SAX on certain documents.

	* src/image/pnginfo.py:
	Fix png eof breakage; parse the header chunk to extract width and
	height information from the png; fix some indentation.

2006-04-23  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py: export cdrom_disc_id as getid

2006-04-22  Dirk Meyer <dischi@freevo.org>

	* src/games/snesinfo.py, src/misc/dirinfo.py, src/table.py,
	* src/mediainfo.py:
	add more missing sys import

	* src/audio/eyed3info.py, src/image/core.py: add missing sys import

	* src/video/ogminfo.py, src/video/riffinfo.py, src/image/core.py,
	* src/image/EXIF.py, src/disc/CDDB.py, src/video/mkvinfo.py,
	* src/games/snesinfo.py, src/disc/discinfo.py, src/image/IPTC.py,
	* src/image/pnginfo.py, src/video/movinfo.py, src/misc/dirinfo.py,
	* src/audio/eyeD3/tag.py, src/audio/eyed3info.py,
	* src/audio/eyeD3/frames.py, src/table.py, src/mediainfo.py:
	add exception to catch to except and if not possible, catch
	KeyboardInterrupt, SystemExit

	* src/misc/xmlinfo.py: support quick check for html based on ext

	* src/image/core.py: do not print errors on stdout

	* src/image/EXIF.py: catch errors

2006-04-17  Dirk Meyer <dischi@freevo.org>

	* src/video/asfinfo.py: detect DRM files

2006-04-08  Jason Tackaberry <tack@urandom.ca>

	* src/disc/ifomodule.c:
	Don't forget to initialize threading in the module init function.

	* src/disc/ifomodule.c:
	Replace tabs with spaces; add Py_BEGIN_ALLOW_THREADS and
	Py_END_ALLOW_THREADS to calls that may block on I/O so that we don't
	block other python threads. (Makes it possible to parse a DVD in a
	thread without blocking the UI.)

2006-03-31  Dirk Meyer <dischi@freevo.org>

	* src/image/gifinfo.py, src/image/bmpinfo.py, src/games/snesinfo.py,
	* src/games/gameboyinfo.py, src/games/__init__.py:
	set properties

	* src/audio/eyeD3/.cvsignore (removed)
	* src/image/.cvsignore (removed)
	* src/disc/.cvsignore (removed)
	* src/misc/.cvsignore (removed)
	* src/.cvsignore (removed)
	* src/audio/.cvsignore (removed)
	* src/video/.cvsignore (removed):
	remove .cvsignore files, we now use svn

2006-03-30  Dirk Meyer <dischi@freevo.org>

	* src/video/mpeginfo.py: fix crash

2006-03-29  Dirk Meyer <dischi@freevo.org>

	* src/audio/eyed3info.py: better exception handling

2006-03-26  Dirk Meyer <dischi@freevo.org>

	* src/mediainfo.py: bugfix

	* src/misc/dirinfo.py, src/image/core.py, src/mediainfo.py: bugfix

2006-03-25  Dirk Meyer <dischi@freevo.org>

	* src/mediainfo.py: no error in keyerror

	* src/misc/xmlinfo.py: bugfix

2006-03-18  Dirk Meyer <dischi@freevo.org>

	* src/__init__.py: do not set logger level

2006-03-11  Dirk Meyer <dischi@freevo.org>

	* src/misc/dirinfo.py, src/misc/xmlinfo.py, src/image/core.py:
	rename libxml2.py to xml.py

	* src/misc/dirinfo.py, src/mediainfo.py, setup.py, src/image/core.py:
	restructure kaa.base

2006-03-04  Dirk Meyer <dischi@freevo.org>

	* src/video/ogminfo.py: do not try to add metadata if file has no video

2006-02-27  Dirk Meyer <dischi@freevo.org>

	* src/audio/eyeD3/tag.py: fix crash

2006-02-19  Dirk Meyer <dischi@freevo.org>

	* src/mediainfo.py: preserve UNPRINTABLE_KEYS

	* src/image/EXIF.py: ugly hack to make EXIF parsing much faster

	* src/factory.py: add some code to debug timing

2006-02-18  Dirk Meyer <dischi@freevo.org>

	* src/disc/dvdinfo.py: fix dts id

	* src/factory.py: handle system exit

2006-02-13  Dirk Meyer <dischi@freevo.org>

	* src/misc/dirinfo.py: remove bad import

	* src/misc/dirinfo.py, TODO, src/image/core.py, src/mediainfo.py:
	Cleanup by using modules provied by kaa.base

2006-02-12  Dirk Meyer <dischi@freevo.org>

	* src/disc/ifomodule.c, src/image/gifinfo.py, src/video/ogminfo.py,
	* AUTHORS, src/disc/datainfo.py, src/disc/vcdinfo.py,
	* src/disc/dvdinfo.py, src/image/jpginfo.py, src/audio/id3.py,
	* src/disc/discinfo.py, src/image/IPTC.py, src/image/pnginfo.py,
	* src/audio/flacinfo.py, src/audio/ac3info.py, src/misc/dirinfo.py,
	* src/audio/eyed3info.py, src/image/tiffinfo.py, src/video/fourcc.py,
	* src/audio/ogginfo.py, src/mediainfo.py, src/video/asfinfo.py,
	* src/audio/m4ainfo.py, src/video/movlanguages.py, src/__init__.py,
	* src/disc/audioinfo.py, src/video/realinfo.py, src/misc/xmlinfo.py,
	* src/factory.py, src/video/riffinfo.py, src/audio/webradioinfo.py,
	* src/image/core.py, src/video/mpeginfo.py, src/image/bmpinfo.py,
	* bin/mminfo, src/video/mkvinfo.py, src/games/snesinfo.py,
	* src/video/movinfo.py, src/table.py, TODO, src/games/gameboyinfo.py,
	* src/audio/pcminfo.py, src/video/vcdinfo.py:
	update header

	* src/__init__.py: check deps

2006-02-11  Dirk Meyer <dischi@freevo.org>

	* TODO: new todo

	* src/misc/dirinfo.py
	* TODO
	* src/misc/xmlinfo.py
	* src/image/core.py
	* src/image/bins.py (removed):
	move all xml code to use libxml2, simplify bins support

	* src/factory.py: add url before correct_data

	* TODO: remove pil todo

	* src/image/pilinfo.py (removed)
	* src/image/pnginfo.py
	* src/image/gifinfo.py (added)
	* src/image/tiffinfo.py
	* src/factory.py
	* src/image/core.py
	* src/image/bmpinfo.py (added)
	* src/image/jpginfo.py:
	remove PIL and add gif and bmp parser

2006-02-03  Dirk Meyer <dischi@freevo.org>

	* README (added)
	* AUTHORS (added)
	* TODO (added)
	* doc (removed)
	* COPYING (added)
	* MANIFEST.in:
	add/move metadata

2006-01-11  Dirk Meyer <dischi@freevo.org>

	* src/audio/eyeD3/binfuncs.py, src/audio/eyeD3/tag.py,
	* src/audio/eyeD3/__init__.py, src/audio/eyeD3/utils.py:
	switch to eyeD3 0.6.9

2005-12-11  Dirk Meyer <dischi@freevo.org>

	* setup.py: always install cdrom (FIXME: check if it is possible)

2005-12-09  Jason Tackaberry <tack@urandom.ca>

	* src/disc/dvdinfo.py: Don't spam.

2005-12-02  Dirk Meyer <dischi@freevo.org>

	* src/disc/ifomodule.c
	* src/factory.py
	* src/disc/dvdinfo.py
	* src/disc/lsdvd.py (removed):
	Fix the libdvdread based dvd scanner and remove the lsdvd wrapper.

2005-11-26  Dirk Meyer <dischi@freevo.org>

	* src/disc/audioinfo.py, src/disc/discinfo.py, src/disc/DiscID.py,
	* src/disc/cdrommodule.c, src/disc/CDDB.py:
	switch to new CDDB code and add unicode output for audio discs

	* src/mediainfo.py: fix string output

2005-11-23  Dirk Meyer <dischi@freevo.org>

	* src/disc/dvdinfo.py, src/image/pnginfo.py, src/audio/ac3info.py,
	* src/misc/dirinfo.py, src/audio/eyed3info.py, src/image/tiffinfo.py,
	* src/mediainfo.py, src/disc/lsdvd.py, src/video/movlanguages.py,
	* src/__init__.py, src/video/riffinfo.py, src/games/snesinfo.py,
	* src/games/gameboyinfo.py, src/video/vcdinfo.py, src/audio/__init__.py,
	* src/video/ogminfo.py, src/video/__init__.py, src/disc/vcdinfo.py,
	* src/image/jpginfo.py, src/audio/id3.py, src/video/fourcc.py,
	* src/video/asfinfo.py, src/misc/xmlinfo.py, setup.py,
	* src/image/EXIF.py, src/disc/CDDB.py, src/image/pilinfo.py,
	* src/audio/eyeD3/tag.py, src/audio/eyeD3/frames.py,
	* src/disc/discinfo.py, src/audio/ogginfo.py, src/factory.py,
	* src/video/mpeginfo.py, src/audio/eyeD3/utils.py, src/image/bins.py,
	* src/image/__init__.py, src/disc/DiscID.py, src/table.py,
	* src/misc/__init__.py, src/disc/datainfo.py, src/image/IPTC.py,
	* src/disc/__init__.py, src/audio/eyeD3/binfuncs.py,
	* src/audio/flacinfo.py, src/audio/m4ainfo.py, src/disc/audioinfo.py,
	* src/video/realinfo.py, src/audio/webradioinfo.py,
	* src/audio/eyeD3/mp3.py, src/audio/eyeD3/__init__.py,
	* src/image/core.py, src/video/mkvinfo.py, src/video/movinfo.py,
	* src/games/__init__.py, src/audio/pcminfo.py:
	set keyword property

2005-11-19  Dirk Meyer <dischi@freevo.org>

	* src/video/mpeginfo.py: fix stupid warning for aspect detection

2005-11-05  Dirk Meyer <dischi@freevo.org>

	* src/video/movinfo.py: read reference atoms

2005-10-14  Dirk Meyer <dischi@freevo.org>

	* src/games/snesinfo.py (added)
	* src/games (added)
	* src/games/__init__.py (added)
	* src/games/gameboyinfo.py (added):
	add games detection

	* src/factory.py: add games detection

2005-09-21  Jason Tackaberry <tack@urandom.ca>

	* src/disc/ifomodule.c: Fixes for -Wall

2005-09-04  Dirk Meyer <dischi@freevo.org>

	* src/audio/eyed3info.py: make sure genre is a string

2005-09-02  Dirk Meyer <dischi@freevo.org>

	* src/mediainfo.py: improved (raw)image handling

	* src/factory.py: search for images based on the filename

	* src/audio/eyed3info.py: better APIC handling

	* src/image/jpginfo.py: try not to convert thumbnail to unicode

	* src/audio/eyeD3/tag.py, src/audio/eyeD3/frames.py,
	* src/audio/eyeD3/__init__.py, src/audio/eyeD3/utils.py:
	switch to new version

2005-08-31  Jason Tackaberry <tack@urandom.ca>

	* src/video/ogminfo.py:
	If no video streams exist in the container, raise exception to force
	factory to try audio.ogginfo.

2005-08-30  Jason Tackaberry <tack@urandom.ca>

	* src/mediainfo.py:
	Implement __contains__ and get() to better simulate dict.

2005-08-07  Dirk Meyer <dischi@freevo.org>

	* src/disc/discinfo.py, src/disc/DiscID.py:
	remove try/except, handled in factory

	* src/disc/audioinfo.py: indent

	* src/factory.py: add some debug

	* setup.py: fix install location of the cdrom module

2005-08-05  Dirk Meyer <dischi@freevo.org>

	* src/video/mkvinfo.py: add aspect

2005-07-09  Dirk Meyer <dischi@freevo.org>

	* src/misc/dirinfo.py: add bins support

2005-07-07  Dirk Meyer <dischi@freevo.org>

	* setup.py: better libdvdread detection

	* src/__init__.py: fix header

	* setup.py: switch to new kaa.base.distribution module

	* src/version.py (removed): remove version file

2005-07-02  Dirk Meyer <dischi@freevo.org>

	* setup.py: hack around version for global setup

	* i18n/qtudta/qtudta.pot (added)
	* i18n/aviinfo/en.mo (added)
	* src/disc/.cvsignore (added)
	* src/disc/dvdinfo.py (added)
	* i18n/iptc/en.po (added)
	* src/disc/discinfo.py (added)
	* src/image/pnginfo.py (added)
	* i18n/qtudta/en.po (added)
	* src/audio/ac3info.py (added)
	* src/audio/eyeD3 (added)
	* src/misc/dirinfo.py (added)
	* src/image/tiffinfo.py (added)
	* src/.cvsignore (added)
	* src/audio/eyed3info.py (added)
	* src/audio/.cvsignore (added)
	* doc (added)
	* src/audio/ogginfo.py (added)
	* src/mediainfo.py (added)
	* src/disc/lsdvd.py (added)
	* src/video/movlanguages.py (added)
	* src/__init__.py (added)
	* src/audio/eyeD3/.cvsignore (added)
	* i18n/iptc (added)
	* i18n/iptc/iptc.pot (added)
	* i18n (added)
	* src/factory.py (added)
	* src/video/riffinfo.py (added)
	* src/audio/eyeD3/utils.py (added)
	* src/video/mpeginfo.py (added)
	* i18n/iptc/en.mo (added)
	* src/image/bins.py (added)
	* bin/mminfo (added)
	* i18n/qtudta/en.mo (added)
	* src/disc/DiscID.py (added)
	* src/image/__init__.py (added)
	* trunk/metadata (added)
	* src/version.py (added)
	* src/disc/cdrommodule.c (added)
	* src/table.py (added)
	* src/misc/__init__.py (added)
	* doc/TODO (added)
	* src/video/vcdinfo.py (added)
	* src/disc/ifomodule.c (added)
	* src/audio/__init__.py (added)
	* src/video/ogminfo.py (added)
	* src/video/__init__.py (added)
	* i18n/id3v2/en.po (added)
	* src/disc/datainfo.py (added)
	* src (added)
	* src/disc/vcdinfo.py (added)
	* src/image/jpginfo.py (added)
	* src/audio/id3.py (added)
	* src/misc/.cvsignore (added)
	* src/disc/__init__.py (added)
	* src/image/IPTC.py (added)
	* src/audio/eyeD3/binfuncs.py (added)
	* src/audio/flacinfo.py (added)
	* src/video/fourcc.py (added)
	* i18n/id3v2 (added)
	* bin (added)
	* src/video/asfinfo.py (added)
	* src/image (added)
	* MANIFEST.in (added)
	* src/audio/m4ainfo.py (added)
	* src/disc/audioinfo.py (added)
	* i18n/qtudta (added)
	* i18n/id3v2/en.mo (added)
	* src/misc (added)
	* src/video/realinfo.py (added)
	* src/misc/xmlinfo.py (added)
	* src/image/.cvsignore (added)
	* src/audio/eyeD3/mp3.py (added)
	* src/audio/webradioinfo.py (added)
	* setup.py (added)
	* src/audio/eyeD3/__init__.py (added)
	* src/image/core.py (added)
	* src/audio (added)
	* i18n/aviinfo/en.po (added)
	* doc/AUTHORS (added)
	* src/image/EXIF.py (added)
	* src/disc/CDDB.py (added)
	* src/video (added)
	* src/video/mkvinfo.py (added)
	* i18n/id3v2/id3v2.pot (added)
	* src/image/pilinfo.py (added)
	* src/video/movinfo.py (added)
	* doc/README (added)
	* src/audio/eyeD3/tag.py (added)
	* src/audio/eyeD3/frames.py (added)
	* i18n/aviinfo/aviinfo.pot (added)
	* src/disc (added)
	* i18n/aviinfo (added)
	* src/audio/pcminfo.py (added)
	* src/video/.cvsignore (added):
	move current mmpython cvs to kaa.metadata

