Where do I have put gobject.idle_add? See the program: http://paste.debian.net/157481/
*Joseph Soares Alcântara* Engenharia da Computação - 8º semestre Universidade Federal do Ceará - UFC Sobral - Ceará +--------------------------------------------------------------------------+ .| - °v°...A liberdade não pode ser comprada e sim | .| -/(_)\..conquistada. Conquiste a sua também use | .| - ^^ G N U / L I N U X | +--------------------------------------------------------------------------+ 2012/2/22 Timo <timomli...@gmail.com> > Op 22-02-12 12:19, Joseph S. Alcântara schreef: > >> Hi, now I get access to FAQ PyGTK talking about threads. It seems a >> little complicated, and I didn't get it to work yet. >> Like there teaches, I put at the begin, before anything be called, >> gtk.threads_init() (that my python says it's deprecated and suggest me to >> use gtk.gdk.threads_init, as well as threads_enter/leave) >> >> So, I put gtk.main() between thrads_enter/leave and every part of code I >> want to be a thread, I put into this code (enter/leave) but it continue >> working the same. ie, it's now working. >> >> I'm did something like this, into a class: >> >> gtk.gdk.threads_enter >> self.th <http://self.th> = Thread(target=self.camera.**runvideo) >> >> self.th.start() >> gtk.gdk.threads_leave >> >> It's a class that calls a gtk.Window. After, in self.camera.runvideo, it >> calls famous routine to show images from webcam >> >> I think it's also in the FAQ, but you shouldn't do any GUI stuff in a > thread, and if you do so, call it with gobject.idle_add(). > > Cheers, > Timo > > *Joseph Soares Alcântara* >> >> Engenharia da Computação - 8º semestre >> Universidade Federal do Ceará - UFC >> Sobral - Ceará >> >> +-----------------------------**------------------------------** >> ---------------+ >> .| - °v°...A liberdade não pode ser comprada e sim | >> .| -/(_)\..conquistada. Conquiste a sua também use | >> .| - ^^ G N U / L I N U X | >> +-----------------------------**------------------------------** >> ---------------+ >> >> >> >> 2012/2/21 Joseph S. Alcântara <josephser...@gmail.com <mailto: >> josephser...@gmail.com**>> >> >> >> How do I show a IplImage in a gtk.Image? >> >> *Joseph Soares Alcântara* >> >> Engenharia da Computação - 8º semestre >> Universidade Federal do Ceará - UFC >> Sobral - Ceará >> >> +-----------------------------**------------------------------** >> ---------------+ >> .| - °v°...A liberdade não pode ser comprada e sim | >> .| -/(_)\..conquistada. Conquiste a sua também use | >> .| - ^^ G N U / L I N U X | >> +-----------------------------**------------------------------** >> ---------------+ >> >> >> >> 2012/2/21 Joseph S. Alcântara <josephser...@gmail.com >> <mailto:josephser...@gmail.com**>> >> >> >> I cannot access FAQ, I think it's not working now. >> Don't you have any example how could I solve that? >> Yes, I'd like to show image from cv.QueryFrame in a gtk.Image, >> But I am new in this, I'm learning a little slow. >> It's a project to the university. We have an Open Source Study >> Group, and I have to create a program using python + opencv + gtk. >> >> Thank you >> >> *Joseph Soares Alcântara* >> >> Engenharia da Computação - 8º semestre >> Universidade Federal do Ceará - UFC >> Sobral - Ceará >> >> +-----------------------------**------------------------------** >> ---------------+ >> .| - °v°...A liberdade não pode ser comprada e sim | >> .| -/(_)\..conquistada. Conquiste a sua também use | >> .| - ^^ G N U / L I N U X >> | >> +-----------------------------**------------------------------** >> ---------------+ >> >> >> >> 2012/2/21 John Stowers <john.stowers.li...@gmail.com >> <mailto:john.stowers.lists@**gmail.com<john.stowers.li...@gmail.com> >> >> >> >> >> IIRC opecv starts a mainloop when create window is called. >> >> In general, don't use threads unless you have read the FAQ and >> understand what you are doing. >> >> John >> >> 2012/2/21 Joseph S. Alcântara <josephser...@gmail.com >> <mailto:josephser...@gmail.com**>>: >> >> > Even if I don't use, ie, if I comment the lines where >> NamedWindow, ShowImage >> > and WaitKey appear it freezes too. >> > >> > Joseph Soares Alcântara >> > Engenharia da Computação - 8º semestre >> > Universidade Federal do Ceará - UFC >> > Sobral - Ceará >> > >> > >> +-----------------------------**------------------------------ >> **---------------+ >> > .| - °v°...A liberdade não pode ser comprada e sim | >> > .| -/(_)\..conquistada. Conquiste a sua também use | >> > .| - ^^ G N U / L I N U X >> | >> > >> +-----------------------------**------------------------------ >> **---------------+ >> > >> > >> > >> > 2012/2/21 John Stowers <john.stowers.li...@gmail.com >> >> <mailto:john.stowers.lists@**gmail.com<john.stowers.li...@gmail.com> >> >> >> >> >> >> >> GTK is not threadsafe. >> >> >> >> If opencv shows a gtk mainwindow in cv.ShowImage, and >> that occurs in a >> >> different thread to the one running gtk_main, then >> unpredictable >> >> crashes and odd behaviour will result. >> >> >> >> Please check the pygtk FAQ for how to use threading and >> pygtk. >> >> >> >> I suggest displaying the image yourself in by getting >> the data from >> >> the IPL image and copying it into a GtkImage. Or be >> much more careful >> >> with which operations you do in which thread (i.e. >> cv.ShowImage, >> >> cv.WaitKey) >> >> >> >> John >> >> >> >> 2012/2/21 Joseph S. Alcântara <josephser...@gmail.com >> <mailto:josephser...@gmail.com**>>: >> >> >> > Hi, Thank you for response to me. >> >> > >> >> > See, can I sand you my program to you see what I am >> making? I've used >> >> > Thread, but seems like is not working like I want. >> >> > >> >> > You must run from main.py >> >> > >> >> > Joseph Soares Alcântara >> >> > Engenharia da Computação - 8º semestre >> >> > Universidade Federal do Ceará - UFC >> >> > Sobral - Ceará >> >> > >> >> > >> >> > >> +-----------------------------**------------------------------ >> **---------------+ >> >> > .| - °v°...A liberdade não pode ser comprada e sim | >> >> > .| -/(_)\..conquistada. Conquiste a sua também use | >> >> > .| - ^^ G N U / L I N U X >> | >> >> > >> >> > >> +-----------------------------**------------------------------ >> **---------------+ >> >> > >> >> > >> >> > >> >> > 2012/2/19 Hart's Antler <bhart...@yahoo.com >> <mailto:bhart...@yahoo.com>> >> >> >> >> >> >> >> Hi Joseph, >> >> >> I got GTK and OpenCV working together using threads. >> This example >> >> >> works >> >> >> with CPython2, CPython3 and PyPy, see my blog post. >> >> >> >> http://pyppet.blogspot.com/**2011/12/rpythonic-044.html<http://pyppet.blogspot.com/2011/12/rpythonic-044.html> >> >> >> >> >> >> -brett- >> >> >> >> >> >> ______________________________**__ >> >> >> From: Joseph S. Alcântara <josephser...@gmail.com >> <mailto:josephser...@gmail.com**>> >> >> >> To: pygtk@daa.com.au <mailto:pygtk@daa.com.au> >> >> >> >> Sent: Sunday, February 19, 2012 9:46 AM >> >> >> Subject: [pygtk] PyGTK + OpenCV >> >> >> >> >> >> hi, I'm writing a application that uses pygtk and >> opencv. and I had a >> >> >> problem. When I run the program it shows a gui. So >> far so good. But, >> >> >> when I >> >> >> click in a menuitem, it should call a functino that >> runs the famous >> >> >> routine >> >> >> to show a video from webcam. But in this moment, the >> app freezes. I >> >> >> have >> >> >> tried to use thread, but opencv gui runs just after >> I call >> >> >> gtk.main_quit(). >> >> >> What could solve my problem? Thanks. >> >> >> >> >> >> Estou escrevendo um programa em python, usando pygtk >> e opencv. Quando >> >> >> rodo >> >> >> o programa, aparece uma janela e até aí, beleza. Mas >> quando eu clico em >> >> >> um >> >> >> menuitem, ele deve chamar uma função que roda a >> famosa rotina que exibe >> >> >> um >> >> >> vídeo a partir da webcam. No entanto, neste momento, >> o programa trava. >> >> >> Então, eu tentei usar Thread, mas a parte do opencv >> só roda depois que >> >> >> eu >> >> >> fecho a janela, chamando gtk.main_quit(). O que >> poderia ser? Obrigado >> >> >> desde >> >> >> já. >> >> >> >> >> >> Joseph Soares Alcântara >> >> >> Engenharia da Computação - 8º semestre >> >> >> Universidade Federal do Ceará - UFC >> >> >> Sobral - Ceará >> >> >> >> >> >> >> >> >> >> >> >> >> +-----------------------------**------------------------------ >> **---------------+ >> >> >> .| - °v°...A liberdade não pode ser comprada e sim | >> >> >> .| -/(_)\..conquistada. Conquiste a sua também use | >> >> >> .| - ^^ G N U / L I N U X >> | >> >> >> >> >> >> >> >> >> >> +-----------------------------**------------------------------ >> **---------------+ >> >> >> >> >> >> >> >> >> ______________________________**_________________ >> >> >> pygtk mailing list pygtk@daa.com.au >> <mailto:pygtk@daa.com.au> >> >> >> >> >> http://www.daa.com.au/mailman/**listinfo/pygtk<http://www.daa.com.au/mailman/listinfo/pygtk> >> >> >> Read the PyGTK FAQ: http://faq.pygtk.org/ >> >> >> >> >> > >> >> > >> >> > ______________________________**_________________ >> >> > pygtk mailing list pygtk@daa.com.au >> <mailto:pygtk@daa.com.au> >> >> >> > >> http://www.daa.com.au/mailman/**listinfo/pygtk<http://www.daa.com.au/mailman/listinfo/pygtk> >> >> > Read the PyGTK FAQ: http://faq.pygtk.org/ >> > >> > >> >> >> >> >> >> >> ______________________________**_________________ >> pygtk mailing list pygtk@daa.com.au >> http://www.daa.com.au/mailman/**listinfo/pygtk<http://www.daa.com.au/mailman/listinfo/pygtk> >> Read the PyGTK FAQ: http://faq.pygtk.org/ >> > > ______________________________**_________________ > pygtk mailing list pygtk@daa.com.au > http://www.daa.com.au/mailman/**listinfo/pygtk<http://www.daa.com.au/mailman/listinfo/pygtk> > Read the PyGTK FAQ: http://faq.pygtk.org/ >
_______________________________________________ pygtk mailing list pygtk@daa.com.au http://www.daa.com.au/mailman/listinfo/pygtk Read the PyGTK FAQ: http://faq.pygtk.org/