Author: dmeyer
Date: Fri Dec 15 14:40:48 2006
New Revision: 2234
Added:
trunk/metadata/src/games/core.py
trunk/metadata/src/games/gameboy.py
- copied, changed from r2220, /trunk/metadata/src/games/gameboyinfo.py
trunk/metadata/src/games/snes.py
- copied, changed from r2220, /trunk/metadata/src/games/snesinfo.py
trunk/metadata/src/image/bmp.py
- copied, changed from r2220, /trunk/metadata/src/image/bmpinfo.py
trunk/metadata/src/image/gif.py
- copied, changed from r2220, /trunk/metadata/src/image/gifinfo.py
trunk/metadata/src/image/jpg.py
- copied, changed from r2220, /trunk/metadata/src/image/jpginfo.py
trunk/metadata/src/image/png.py
- copied, changed from r2220, /trunk/metadata/src/image/pnginfo.py
trunk/metadata/src/image/tiff.py
- copied, changed from r2220, /trunk/metadata/src/image/tiffinfo.py
Removed:
trunk/metadata/src/games/gameboyinfo.py
trunk/metadata/src/games/snesinfo.py
trunk/metadata/src/image/bmpinfo.py
trunk/metadata/src/image/gifinfo.py
trunk/metadata/src/image/jpginfo.py
trunk/metadata/src/image/pnginfo.py
trunk/metadata/src/image/tiffinfo.py
Modified:
trunk/metadata/src/__init__.py
trunk/metadata/src/factory.py
trunk/metadata/src/image/__init__.py
trunk/metadata/src/image/core.py
trunk/metadata/src/mediainfo.py
Log:
Start with the next round of cleanup:
o rename extinfo.py to ext.py
o rename FooInfo class to Foo
o use core module in games
o only import from core in image and games
Modified: trunk/metadata/src/__init__.py
==============================================================================
--- trunk/metadata/src/__init__.py (original)
+++ trunk/metadata/src/__init__.py Fri Dec 15 14:40:48 2006
@@ -40,7 +40,8 @@
from factory import *
from disc.discinfo import cdrom_disc_id as getid
from mediainfo import MediaInfo, MEDIA_AUDIO, MEDIA_VIDEO, MEDIA_IMAGE, \
- MEDIA_AV, MEDIA_SUBTITLE, MEDIA_CONTAINER, MEDIA_DIRECTORY, MEDIA_DISC
+ MEDIA_AV, MEDIA_SUBTITLE, MEDIA_CONTAINER, MEDIA_DIRECTORY, MEDIA_DISC, \
+ MEDIA_GAME
# use network functions
Modified: trunk/metadata/src/factory.py
==============================================================================
--- trunk/metadata/src/factory.py (original)
+++ trunk/metadata/src/factory.py Fri Dec 15 14:40:48 2006
@@ -122,11 +122,11 @@
import video.asfinfo
import video.movinfo
import video.flvinfo
- import image.jpginfo
- import image.pnginfo
- import image.tiffinfo
- import image.bmpinfo
- import image.gifinfo
+ import image.jpg
+ import image.png
+ import image.tiff
+ import image.bmp
+ import image.gif
import video.vcdinfo
import video.realinfo
import video.ogminfo
@@ -160,8 +160,8 @@
import audio.webradioinfo
import audio.flacinfo
- import games.gameboyinfo
- import games.snesinfo
+ import games.gameboy
+ import games.snes
import misc.dirinfo
Added: trunk/metadata/src/games/core.py
==============================================================================
--- (empty file)
+++ trunk/metadata/src/games/core.py Fri Dec 15 14:40:48 2006
@@ -0,0 +1,38 @@
+# -*- coding: iso-8859-1 -*-
+# -----------------------------------------------------------------------------
+# core.py - basic glames class
+# -----------------------------------------------------------------------------
+# $Id: core.py 2216 2006-12-10 20:32:21Z dmeyer $
+#
+# -----------------------------------------------------------------------------
+# kaa-Metadata - Media Metadata for Python
+# Copyright (C) 2003-2006 Thomas Schueppel, Dirk Meyer
+#
+# First Edition: Thomas Schueppel <[EMAIL PROTECTED]>
+# Maintainer: Dirk Meyer <[EMAIL PROTECTED]>
+#
+# Please see the file AUTHORS for a complete list of authors.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MER-
+# CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+# Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+#
+# -----------------------------------------------------------------------------
+
+from kaa.metadata import mediainfo
+from kaa.metadata.factory import register
+
+ParseError = mediainfo.KaaMetadataParseError
+
+class Game(mediainfo.MediaInfo):
+ media = mediainfo.MEDIA_GAME
Copied: trunk/metadata/src/games/gameboy.py (from r2220,
/trunk/metadata/src/games/gameboyinfo.py)
==============================================================================
--- /trunk/metadata/src/games/gameboyinfo.py (original)
+++ trunk/metadata/src/games/gameboy.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# gameboyinfo.py - Gameboy ROM parsing
+# gameboy.py - Gameboy ROM parsing
# -----------------------------------------------------------------------------
# $Id$
#
@@ -33,9 +33,8 @@
import struct
import logging
-# kaa imports
-from kaa.metadata import mediainfo
-from kaa.metadata import factory
+# kaa.metadata.games core import
+import core
# get logging object
log = logging.getLogger('metadata')
@@ -47,10 +46,10 @@
GB_LOGOCODE =
'\xCE\xED\x66\x66\xCC\x0D\x00\x0B\x03\x73\x00\x83\x00\x0C\x00\x0D\x00\x08\x11\x1F\x88\x89\x00\x0E\xDC\xCC\x6E\xE6\xDD\xDD\xD9\x99\xBB\xBB\x67\x63\x6E\x0E\xEC\xCC\xDD\xDC\x99\x9F\xBB\xB9\x33\x3E'
-class GameboyInfo(mediainfo.MediaInfo):
+class Gameboy(core.Game):
def __init__(self,file):
- mediainfo.MediaInfo.__init__(self)
+ core.Game.__init__(self)
# Determine if the ROM is a Gameboy Advance ROM.
# Compare the Logo Code. All GBA Roms have this code.
@@ -61,7 +60,7 @@
# Compare the Logo Code. All GB Roms have this code.
file.seek (260)
if file.read(len(GB_LOGOCODE)) != GB_LOGOCODE:
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
# Retrieve the ROM Title
game_title = file.read(15)
@@ -93,6 +92,6 @@
# Check that the Fized Value is 0x96, if not then error.
if file.read(1) != '\x96':
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
-factory.register( 'games/gameboy', ('gba', 'gb', 'gbc', ), GameboyInfo )
+core.register( 'games/gameboy', ('gba', 'gb', 'gbc', ), Gameboy )
Copied: trunk/metadata/src/games/snes.py (from r2220,
/trunk/metadata/src/games/snesinfo.py)
==============================================================================
--- /trunk/metadata/src/games/snesinfo.py (original)
+++ trunk/metadata/src/games/snes.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# snesinfo.py - Gameboy Advance ROM parsing
+# snes.py - Gameboy Advance ROM parsing
# -----------------------------------------------------------------------------
# $Id$
#
@@ -33,14 +33,12 @@
import struct
import logging
import sys
-
-# kaa imports
-from kaa.metadata import mediainfo
-from kaa.metadata import factory
-
from struct import *
from re import *
+# kaa.metadata.games core import
+import core
+
# get logging object
log = logging.getLogger('metadata')
@@ -53,10 +51,10 @@
#most of the code is imported from the old snesitem.py.
-class SNESInfo(mediainfo.MediaInfo):
+class SNES(core.Game):
def __init__(self,file):
- mediainfo.MediaInfo.__init__(self)
+ core.Game.__init__(self)
self.mime = 'games/snes'
self.type = 'SuperNintendo game'
@@ -94,8 +92,8 @@
else:
# not detected as rom
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
self.title = romName.strip()
-factory.register( 'games/snes', ('smc', 'sfc', 'fig', ), SNESInfo )
+core.register( 'games/snes', ('smc', 'sfc', 'fig', ), SNES )
Modified: trunk/metadata/src/image/__init__.py
==============================================================================
--- trunk/metadata/src/image/__init__.py (original)
+++ trunk/metadata/src/image/__init__.py Fri Dec 15 14:40:48 2006
@@ -0,0 +1,5 @@
+import jpg
+import png
+import tiff
+import bmp
+import gif
Copied: trunk/metadata/src/image/bmp.py (from r2220,
/trunk/metadata/src/image/bmpinfo.py)
==============================================================================
--- /trunk/metadata/src/image/bmpinfo.py (original)
+++ trunk/metadata/src/image/bmp.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# bmpinfo.py - bmp file parsing
+# bmp.py - bmp file parsing
# -----------------------------------------------------------------------------
# $Id$
#
@@ -33,10 +33,7 @@
import struct
import logging
-# kaa imports
-from kaa.metadata import mediainfo
-from kaa.metadata import factory
-
+# import kaa.metadata.image core
import core
# get logging object
@@ -45,10 +42,10 @@
# interesting file format info:
# http://www.fortunecity.com/skyscraper/windows/364/bmpffrmt.html
-class BMPInfo(core.ImageInfo):
+class BMP(core.Image):
def __init__(self,file):
- core.ImageInfo.__init__(self)
+ core.Image.__init__(self)
self.mime = 'image/bmp'
self.type = 'windows bitmap image'
@@ -58,7 +55,7 @@
file.seek(0, 2)
if bfType != 'BM' or bfSize != file.tell():
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
-factory.register( 'image/bmp', ('bmp', ), BMPInfo )
+core.register( 'image/bmp', ('bmp', ), BMP )
Modified: trunk/metadata/src/image/core.py
==============================================================================
--- trunk/metadata/src/image/core.py (original)
+++ trunk/metadata/src/image/core.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# core.py - basic image parsing using Imaging
+# core.py - basic image class
# -----------------------------------------------------------------------------
# $Id$
#
@@ -36,10 +36,14 @@
import logging
# kaa imports
-from kaa.metadata import factory
-from kaa.metadata import mediainfo
from kaa import xml
+# kaa.metadata imports
+from kaa.metadata.factory import register
+from kaa.metadata import mediainfo
+
+ParseError = mediainfo.KaaMetadataParseError
+
# get logging object
log = logging.getLogger('metadata')
@@ -48,7 +52,7 @@
'thumbnail','software','hardware', 'dpi', 'city', 'rotation' ]
-class ImageInfo(mediainfo.MediaInfo):
+class Image(mediainfo.MediaInfo):
"""
Digital Images, Photos, Pictures.
"""
Copied: trunk/metadata/src/image/gif.py (from r2220,
/trunk/metadata/src/image/gifinfo.py)
==============================================================================
--- /trunk/metadata/src/image/gifinfo.py (original)
+++ trunk/metadata/src/image/gif.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# gifinfo.py - gif file parsing
+# gif.py - gif file parsing
# -----------------------------------------------------------------------------
# $Id$
#
@@ -33,10 +33,7 @@
import struct
import logging
-# kaa imports
-from kaa.metadata import mediainfo
-from kaa.metadata import factory
-
+# import kaa.metadata.image core
import core
# get logging object
@@ -45,19 +42,19 @@
# interesting file format info:
# http://www.danbbs.dk/~dino/whirlgif/gif87.html
-class GIFInfo(core.ImageInfo):
+class GIF(core.Image):
def __init__(self,file):
- core.ImageInfo.__init__(self)
+ core.Image.__init__(self)
self.mime = 'image/gif'
- (gifType, self.width, self.height) = \
- struct.unpack('<6sHH', file.read(10))
+ header = struct.unpack('<6sHH', file.read(10))
+ gifType, self.width, self.height = header
if not gifType.startswith('GIF'):
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
self.type = gifType.lower()
-factory.register( 'image/gif', ('gif', ), GIFInfo )
+core.register( 'image/gif', ('gif', ), GIF )
Copied: trunk/metadata/src/image/jpg.py (from r2220,
/trunk/metadata/src/image/jpginfo.py)
==============================================================================
--- /trunk/metadata/src/image/jpginfo.py (original)
+++ trunk/metadata/src/image/jpg.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# jpginfo.py - jpg file parsing
+# jpg.py - jpg file parsing
# -----------------------------------------------------------------------------
# $Id$
#
@@ -33,15 +33,11 @@
import struct
import logging
import cStringIO
-
-# kaa imports
-from kaa.metadata import mediainfo
-from kaa.metadata import factory
import libxml2
-# image imports
-import EXIF
+# import kaa.metadata.image core
import core
+import EXIF
import IPTC
# get logging object
@@ -73,17 +69,17 @@
'Image Software': 'software',
}
-class JPGInfo(core.ImageInfo):
+class JPG(core.Image):
table_mapping = { 'EXIF': EXIFMap, 'IPTC': IPTC.mapping }
def __init__(self,file):
- core.ImageInfo.__init__(self)
+ core.Image.__init__(self)
self.mime = 'image/jpeg'
self.type = 'jpeg image'
if file.read(2) != '\xff\xd8':
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
file.seek(-2,2)
if file.read(2) != '\xff\xd9':
@@ -176,4 +172,4 @@
if key.startswith('Thumb:') or key == 'Software':
self._set(key, value)
-factory.register( 'image/jpeg', ('jpg','jpeg'), JPGInfo )
+core.register( 'image/jpeg', ('jpg','jpeg'), JPG )
Copied: trunk/metadata/src/image/png.py (from r2220,
/trunk/metadata/src/image/pnginfo.py)
==============================================================================
--- /trunk/metadata/src/image/pnginfo.py (original)
+++ trunk/metadata/src/image/png.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# pnginfo.py - png file parsing
+# png.py - png file parsing
# -----------------------------------------------------------------------------
# $Id$
#
@@ -35,13 +35,9 @@
import logging
# kaa imports
-from kaa.metadata import mediainfo
-from kaa.metadata import factory
from kaa.strutils import str_to_unicode
-# image imports
-import IPTC
-import EXIF
+# import kaa.metadata.image core
import core
# get logging object
@@ -55,17 +51,16 @@
PNGSIGNATURE = "\211PNG\r\n\032\n"
-class PNGInfo(core.ImageInfo):
+class PNG(core.Image):
def __init__(self,file):
- core.ImageInfo.__init__(self)
- self.iptc = None
+ core.Image.__init__(self)
self.mime = 'image/png'
self.type = 'PNG image'
signature = file.read(8)
if ( signature != PNGSIGNATURE ):
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
self.meta = {}
while self._readChunk(file):
@@ -128,4 +123,4 @@
self.comment = self.meta[key]
return 1
-factory.register( 'image/png', ('png',), PNGInfo )
+core.register( 'image/png', ('png',), PNG )
Copied: trunk/metadata/src/image/tiff.py (from r2220,
/trunk/metadata/src/image/tiffinfo.py)
==============================================================================
--- /trunk/metadata/src/image/tiffinfo.py (original)
+++ trunk/metadata/src/image/tiff.py Fri Dec 15 14:40:48 2006
@@ -1,6 +1,6 @@
# -*- coding: iso-8859-1 -*-
# -----------------------------------------------------------------------------
-# tiffinfo.py - tiff file parsing
+# tiff.py - tiff file parsing
# -----------------------------------------------------------------------------
# $Id$
#
@@ -34,14 +34,9 @@
import zlib
import logging
-# kaa imports
-from kaa.metadata import mediainfo
-from kaa.metadata import factory
-
-# image imports
-import IPTC
-import EXIF
+# import kaa.metadata.image core
import core
+import IPTC
# get logging object
log = logging.getLogger('metadata')
@@ -52,12 +47,12 @@
# http://partners.adobe.com/asn/developer/pdfs/tn/TIFF6.pdf
-class TIFFInfo(core.ImageInfo):
+class TIFF(core.Image):
table_mapping = { 'IPTC': IPTC.mapping }
def __init__(self,file):
- core.ImageInfo.__init__(self)
+ core.Image.__init__(self)
self.iptc = None
self.mime = 'image/tiff'
self.type = 'TIFF image'
@@ -111,10 +106,10 @@
else:
self.height = offset
else:
- raise mediainfo.KaaMetadataParseError()
+ raise core.ParseError()
if iptc:
self._appendtable('IPTC', iptc)
-factory.register( 'image/tiff', ('tif','tiff'), TIFFInfo)
+core.register( 'image/tiff', ('tif','tiff'), TIFF)
Modified: trunk/metadata/src/mediainfo.py
==============================================================================
--- trunk/metadata/src/mediainfo.py (original)
+++ trunk/metadata/src/mediainfo.py Fri Dec 15 14:40:48 2006
@@ -53,6 +53,7 @@
MEDIA_CONTAINER = 'MEDIA_CONTAINER'
MEDIA_DIRECTORY = 'MEDIA_DIRECTORY'
MEDIA_DISC = 'MEDIA_DISC'
+MEDIA_GAME = 'MEDIA_GAME'
MEDIACORE = ['title', 'caption', 'comment', 'size', 'type', 'subtype', 'date',
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog