Hi there,

I have Code1 and at the end I want co continue with Code2 (both codes are
included here). In Code2 I am doing data conversion with get_pixels(). I am
trying take last_frame or frame_cache data in pygame code1 and then I want
to do get_pixels() on it to get the same data format as in Code2 - or to
use any function in pygame to get the same dataformat as from gtk
get_pixels().

Any idea please how to do it in my Code1 with pygame or how to combine both
codes and use gtk get_pixels() function for conversion?


Code 1:
        #we will process only one frame at the time
        msgs = self.cap.read()
        msgl = len(msgs)
        if msgl:
            msg = msgs[msgl - 1]
            cmd = msg[0]

            if cmd == "data":
                data = cStringIO.StringIO(msg[1])
                last_frame = pygame.image.load(data)
                self.frame_update = True

        for msg in self.adb.read():
            cmd = msg[0]
            if cmd == "end":
                self.exit()

        self.menu_loop()

        if self.frame_update:
            self.frame_update = False

            if last_frame is not None:
                if self.landscape:
                    a = last_frame.subsurface(pygame.Rect((0,0),
self.sizel))
                else:
                    a = last_frame.subsurface(pygame.Rect((0,0),
self.sizep))

                aw, ah = a.get_size()
                if aw != self.proj[2] or ah != self.proj[3]:
                    frame_cache = pygame.transform.smoothscale(a,
(self.proj[2], self.proj[3]))
                else:
                    frame_cache = a.copy()

            self.screen_update = True

        if self.screen_update:
            self.screen.fill((0, 0, 0))
            self.screen_update = False
            self.screen.blit(frame_cache, (self.proj[0], self.proj[1]))
            if self.show_menu:
                self.screen.blit(self.img_menu, (0, 0))
            if self.show_nav:
                self.screen.blit(self.img_nav, (self.size[0] - self.nav_w,
0))

            pygame.display.update() #here i need to change it for gtk
get_pixels


Code 2:
            img_width = 160
            img_height = 120

            data = gtk.gdk.Pixbuf(
              gtk.gdk.COLORSPACE_RGB,
              False,
              8,
              img_width,
              img_height
            )
            data.get_from_drawable(
              gtk.gdk.get_default_root_window(),
              gtk.gdk.colormap_get_system(),
              280, 228, 0, 0,
              img_width,
              img_height
            )
            data = data.scale_simple(width, height, gtk.gdk.INTERP_NEAREST)

            data = data.get_pixels()

Reply via email to