2010-07-15 8 views

Répondre

2

Si vous n'êtes pas marié à l'idée d'utiliser gstreamer, vous pouvez utiliser OpenCV à la place. This post donne un bon exemple en utilisant pygame.

Cependant, vous pouvez obtenir le pixbuf de cette façon (et vous ne même pas besoin PIL):

def get_picture(self, event, data): 
    drawable = self.movie_window.window 
    colormap = drawable.get_colormap() 
    pixbuf = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, 0, 8, *drawable.get_size()) 
    pixbuf = pixbuf.get_from_drawable(drawable, colormap, 0,0,0,0, *drawable.get_size()) 
    pixbuf.save(r'somefile.png', 'png') 
    pixbuf.save(r'somefile.jpeg', 'jpeg') 

, puis il suffit de créer un bouton et lier la commande à get_picture.

Bien sûr, si je devais écrire ce programme, je fait saisir l'image à un Image en premier lieu, puis tirer sur le gtk.DrawingArea - qui vous permettra de faire toutes sortes de fun things.

Questions connexes