Author: duncan
Date: Mon Dec  4 16:38:21 2006
New Revision: 8700

Modified:
   branches/rel-1/freevo/setup.py
   branches/rel-1/freevo/src/audio/plugins/coversearch.py
   branches/rel-1/freevo/src/helpers/makelogos.py
   branches/rel-1/freevo/src/osd.py
   branches/rel-1/freevo/src/skins/main/skin_utils.py
   branches/rel-1/freevo/src/util/fileops.py
   branches/rel-1/freevo/src/util/fxdimdb.py
   branches/rel-1/freevo/src/util/videothumb.py

Log:
Converted from PIL to kaa.imlib2


Modified: branches/rel-1/freevo/setup.py
==============================================================================
--- branches/rel-1/freevo/setup.py      (original)
+++ branches/rel-1/freevo/setup.py      Mon Dec  4 16:38:21 2006
@@ -20,6 +20,7 @@
             ('xml.utils.qp_xml', 'http://pyxml.sourceforge.net/'),
             ('kaa', '\"svn co svn://svn.freevo.org/kaa/trunk/ kaa\"' ),
             ('kaa.metadata', '\"svn co svn://svn.freevo.org/kaa/trunk/ kaa\"' 
),
+            ('kaa.imlib2', '\"svn co svn://svn.freevo.org/kaa/trunk/ kaa\"' ),
             ('BeautifulSoup', 'http://www.crummy.com/software/BeautifulSoup/' 
),
             ('pygame', 'http://www.pygame.org'),
             ('Image', 'http://www.pythonware.com/products/pil/'),

Modified: branches/rel-1/freevo/src/audio/plugins/coversearch.py
==============================================================================
--- branches/rel-1/freevo/src/audio/plugins/coversearch.py      (original)
+++ branches/rel-1/freevo/src/audio/plugins/coversearch.py      Mon Dec  4 
16:38:21 2006
@@ -51,7 +51,7 @@
 import urllib2
 import time
 import config
-import Image
+import kaa.imlib2 as Image
 import cStringIO
 from xml.dom import minidom # ParseError used by amazon module
 
@@ -300,7 +300,6 @@
 
         # try to crop the image to avoid ugly borders
         try:
-            import Image
             image = Image.open(filename)
             width, height = image.size
             image.crop((2,2,width-4, height-4)).save(filename)

Modified: branches/rel-1/freevo/src/helpers/makelogos.py
==============================================================================
--- branches/rel-1/freevo/src/helpers/makelogos.py      (original)
+++ branches/rel-1/freevo/src/helpers/makelogos.py      Mon Dec  4 16:38:21 2006
@@ -34,7 +34,7 @@
 import sys
 import urllib2
 import cStringIO
-import Image
+import kaa.imlib2 as Image
 
 import config
 from tv import xmltv

Modified: branches/rel-1/freevo/src/osd.py
==============================================================================
--- branches/rel-1/freevo/src/osd.py    (original)
+++ branches/rel-1/freevo/src/osd.py    Mon Dec  4 16:38:21 2006
@@ -34,7 +34,7 @@
 import time
 import os
 import stat
-import Image
+import kaa.imlib2 as Image
 import re
 import traceback
 import threading, thread
@@ -472,6 +472,8 @@
                 return
             
             if event.type == KEYDOWN:
+                print 'type=%s key=%s' % (event.type, event.key)
+
                 if not map and event.key > 30:
                     try:
                         if event.unicode != u'':
@@ -584,6 +586,12 @@
         self.screen.fill(self._sdlcol(color))
         
     
+    def printdata(self, data):
+        print 'image=%s %d %r' % (type(data[0]), len(data[0]), data[0][:10])
+        print 'size=%s %s' % (type(data[1]), data[1])
+        print 'mode=%s %s' % (type(data[2]), data[2])
+
+
     def loadbitmap(self, url, cache=False):
         """
         Load a bitmap and return the pygame image object.
@@ -620,17 +628,20 @@
                 if isstring(filename) and filename.endswith('.raw'):
                     # load cache
                     data  = util.read_thumbnail(filename)
+                    #self.printdata(data)
                     # convert to pygame image
                     image = pygame.image.fromstring(data[0], data[1], data[2])
 
                 elif thumbnail:
                     # load cache or create it
                     data = util.cache_image(filename)
+                    #self.printdata(data)
                     # convert to pygame image
                     try:
                         image = pygame.image.fromstring(data[0], data[1], 
data[2])
                     except:
                         data = util.create_thumbnail(filename)
+                        #self.printdata(data)
                         image = pygame.image.fromstring(data[0], data[1], 
data[2])
                 else:
                     try:
@@ -641,7 +652,7 @@
                         image = pygame.image.fromstring(i.tostring(), i.size, 
i.mode)
             
             except:
-                print 'Unknown Problem while loading image %s' % String(url)
+                print 'Problem while loading image %s' % String(url)
                 if config.DEBUG:
                     traceback.print_exc()
                 return None

Modified: branches/rel-1/freevo/src/skins/main/skin_utils.py
==============================================================================
--- branches/rel-1/freevo/src/skins/main/skin_utils.py  (original)
+++ branches/rel-1/freevo/src/skins/main/skin_utils.py  Mon Dec  4 16:38:21 2006
@@ -31,7 +31,7 @@
 
 import pygame
 from pygame.locals import *
-import ImageFile
+import kaa.imlib2 as Image
 
 import osd
 import os
@@ -72,7 +72,7 @@
     imagefile = None
     
     if item.image:
-        if isinstance(item.image, ImageFile.ImageFile):
+        if isinstance(item.image, Image.Image):
             image = osd.loadbitmap(item.image)
         else:
             image = load_imagecache['thumb://%s' % item.image]

Modified: branches/rel-1/freevo/src/util/fileops.py
==============================================================================
--- branches/rel-1/freevo/src/util/fileops.py   (original)
+++ branches/rel-1/freevo/src/util/fileops.py   Mon Dec  4 16:38:21 2006
@@ -40,7 +40,7 @@
 import traceback
 
 # image stuff
-import Image
+import kaa.imlib2 as Image
 import cStringIO
 from kaa.metadata.image import EXIF as exif
 
@@ -490,7 +490,7 @@
                 if config.DEBUG:
                     print e
 
-        if not image or image.size[0] < 100 or image.size[1] < 100:
+        if not image or image.width < 100 or image.height < 100:
             try:
                 image = Image.open(filename)
             except Exception, e:
@@ -500,23 +500,26 @@
                 return None
         
     try:
-        if image.size[0] > 255 or image.size[1] > 255:
-            image.thumbnail((255,255), Image.ANTIALIAS)
+        if image.width > 255 or image.height > 255:
+            image.thumbnail((255,255))
+
+        #print 'thumb:', thumb
+        #print 'image.mode:', image.mode
 
         if image.mode == 'P':
-            image = image.convert('RGB')
+            image.mode = 'RGB'
+        if image.mode == 'BGRA':
+            image.mode = 'RGBA'
 
-        data = (image.tostring(), image.size, image.mode)
+        data = (str(image.get_raw_data(format=image.mode)), image.size, 
image.mode)
 
         f = vfs.open(thumb, 'w')
-        f.write('FRI%s%s%5s' % (chr(image.size[0]), chr(image.size[1]), 
image.mode))
+        f.write('FRI%s%s%5s' % (chr(image.width), chr(image.height), 
image.mode))
         f.write(data[0])
         f.close()
         return data
     except Exception, e:
-        print 'error caching image %s' % filename
-        if config.DEBUG:
-            print e
+        print 'error caching image %s: %s' % (filename, e)
         return None
         
 

Modified: branches/rel-1/freevo/src/util/fxdimdb.py
==============================================================================
--- branches/rel-1/freevo/src/util/fxdimdb.py   (original)
+++ branches/rel-1/freevo/src/util/fxdimdb.py   Mon Dec  4 16:38:21 2006
@@ -680,7 +680,7 @@
 
         # try to crop the image to avoid borders by imdb
         try:
-            import Image
+            import kaa.imlib2 as Image
             image = Image.open(filename)
             width, height = image.size
             image.crop((2,2,width-4, height-4)).save(filename)

Modified: branches/rel-1/freevo/src/util/videothumb.py
==============================================================================
--- branches/rel-1/freevo/src/util/videothumb.py        (original)
+++ branches/rel-1/freevo/src/util/videothumb.py        Mon Dec  4 16:38:21 2006
@@ -43,7 +43,7 @@
     """
     import config
     import popen3
-    import Image
+    import kaa.imlib2 as Image
     import util
     import vfs
     import gui.PopupBox
@@ -78,28 +78,31 @@
     if vfs.isfile(imagefile):
         try:
             image = Image.open(imagefile)
-            if image.size[0] > 255 or image.size[1] > 255:
-                image.thumbnail((255,255), Image.ANTIALIAS)
+            if image.width > 255 or image.height > 255:
+                image.thumbnail((255,255))
 
             if image.mode == 'P':
                 image = image.convert('RGB')
 
-            if image.size[0] * 3 > image.size[1] * 4:
+            if image.width * 3 > image.height * 4:
                 # fix image with blank bars to be 4:3
-                ni = Image.new('RGB', (image.size[0], (image.size[0]*3)/4))
-                ni.paste(image, (0,(((image.size[0]*3)/4)-image.size[1])/2))
+                nh = (image.width*3)/4
+                ni = Image.new((image.width, nh))
+                ni.draw_rectangle((0,0), (image.width, nh), (0,0,0,255), True)
+                ni.blend(image, dst_pos=(0,(nh- image.height) / 2))
                 image = ni
-            elif image.size[0] * 3 < image.size[1] * 4:
+            elif image.width * 3 < image.height * 4:
                 # strange aspect, let's guess it's 4:3
-                image = Image.open(imagefile).resize((image.size[0], 
(image.size[0]*3)/4),
-                                                     Image.ANTIALIAS)
+                new_size = (image.width, (image.width*3)/4)
+                image = image.scale((new_size))
 
-            # crob some pixels, looks better that way
-            image = image.crop((4, 3, image.size[0]-8, image.size[1]-6))
+            # crop some pixels, looks better that way
+            image = image.crop((4, 3), (image.width-8, image.height-6))
             if imagefile.endswith('.raw.tmp'):
                 f = vfs.open(imagefile[:-4], 'w')
-                f.write('FRI%s%s%5s' % (chr(image.size[0]), 
chr(image.size[1]), image.mode))
-                f.write(image.tostring())
+                #f.write('FRI%s%s%5s' % (chr(image.width), chr(image.height), 
image.mode))
+                f.write('FRI%s%s%5s' % (chr(image.width), chr(image.height), 
'RGB'))
+                f.write(str(image.get_raw_data(format='RGB')))
                 f.close()
                 os.unlink(imagefile)
             else:
@@ -108,6 +111,7 @@
             print e
     else:
         print 'no imagefile found'
+        print imagefile
         
     if popup:
         pop.destroy()

-------------------------------------------------------------------------
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

Reply via email to