Matthias Reichl wrote: Nice bug report, thanks.
The outdir is still supported in the current mplayer svn and it is still in the man page. I will try a build of 29308 to see if the command syntax has changed or if your version is broken. IIRC _run is a thread and so the cd should be done there and the original directory should be popped back. I want to change these calls in encoding core to use childapp but that will be after 1.8.4. Duncan > Generating video thumbnails seems to be broken in current SVN. > > freevo cache --video-thumbs --directory=/freevo/video/thumbtest/ > > hangs forever, the process (ps axfww) tree looks like this: > > ... > 17184 pts/1 S+ 0:00 \_ /usr/bin/python > /usr/bin/freevo cache --video-thumbs --directory=/freevo/video/thumbtest/ > 17186 pts/1 S+ 0:00 \_ python > /usr/lib/python2.5/site-packages/freevo/helpers/cache.py cache --video-thumbs > --directory=/freevo/video/thumbtest/ > 17188 pts/1 S+ 0:00 \_ /usr/bin/python > /usr/bin/freevo > --execute=/usr/lib/python2.5/site-packages/freevo/util/videothumb.pyc > /usr/bin/mplayer /freevo/video/thumbtest/test.avi > /var/cache/freevo/vfs/freevo/video/thumbtest/test.avi.raw.tmp > 17190 pts/1 Sl+ 0:00 \_ python > /usr/lib/python2.5/site-packages/freevo/util/videothumb.pyc /usr/bin/mplayer > /freevo/video/thumbtest/test.avi > /var/cache/freevo/vfs/freevo/video/thumbtest/test.avi.raw.tmp > ... > 17193 pts/1 S+ 0:00 /usr/bin/mplayer -vo png:z=1:outdir=/tmp -ao null > -frames 8 -ss 211 -zoom /freevo/video/thumbtest/test.avi > > When I interrupt "freevo cache ..." with control-C, the freevo process(es) > stop, but the mplayer process still hangs in the background (also note > that the parent of the process now is init, not python/freevo). > > The videothumb-0.log file contains the following entries (debugging > enabled): > > 2009-05-14 19:08:00,894 DEBUG encodingcore.py (406): > source='/freevo/video/thumbtest/test.avi' > 2009-05-14 19:08:00,895 DEBUG encodingcore.py (412): Video length is 422.0 > 2009-05-14 19:08:00,896 DEBUG encodingcore.py (927): > CommandThread.__init__(parent=<encodingcore.EncodingJob instance at > 0x84b6f2c>, command=['/usr/bin/mplayer', '-vo', 'png:z=1:outdir=/tmp', '-ao', > 'null', '-frames', '8', '-ss', '211', '-zoom', > '/freevo/video/thumbtest/test.avi'], updatefunc=None, finalfunc=<bound method > EncodingJob._videothumb_parse of <encodingcore.EncodingJob instance at > 0x84b6f2c>>, flushbuffer=0, data='data.png', lock=None) > 2009-05-14 19:08:00,898 DEBUG encodingcore.py (940): /usr/bin/mplayer -vo > png:z=1:outdir=/tmp -ao null -frames 8 -ss 211 -zoom > /freevo/video/thumbtest/test.avi > 2009-05-14 19:08:00,929 DEBUG encodingcore.py (942): /usr/bin/mplayer > thread running with PID 17192 > Traceback (most recent call last): > File "/usr/lib/python2.5/site-packages/freevo/util/videothumb.py", line > 143, in <module> > encjob._wait() > File "/usr/lib/python2.5/site-packages/freevo/encodingcore.py", line 916, > in _wait > raise EncodingError('thread still running') > encodingcore.EncodingError: thread still running > Exception in thread Thread-1: > Traceback (most recent call last): > File "/usr/lib/python2.5/threading.py", line 486, in __bootstrap_inner > self.run() > File "/usr/lib/python2.5/site-packages/freevo/encodingcore.py", line 947, > in run > line = output.readline().strip() > IOError: [Errno 4] Interrupted system call > > I'm running the current kaa SVN (r3981) and REL-1_8_4 SVN (r11502) > on a Debian lenny box, using mplayer SVN-r26940 from debian-multimedia.org. > > One issue is that this mplayer version doesn't support the "outdir=..." > option in the png video-output driver. Currently I'm using the the > following hack to get the thumbnails working again (but I don't know > if the os.chdir() has any negative side-effects on other parts): > > --- freevo/src/encodingcore.py (revision 11502) > +++ freevo/src/encodingcore.py (working copy) > @@ -464,12 +464,13 @@ > self.length = 0 > > position = str(int(self.length / 2.0)) > - arguments = [ '-vo', 'png:z=1:outdir=/tmp', '-ao', 'null', > '-frames', '8', '-ss', position, '-zoom' ] > + arguments = [ '-vo', 'png:z=1', '-ao', 'null', '-frames', '8', > '-ss', position, '-zoom' ] > if self.titlenum: > arguments += [ '-dvd-device', self.source, 'dvd://%s' % > self.titlenum ] > else: > arguments += [ self.source ] > > + os.chdir('/tmp') > self._run(mplayer, arguments, self._videothumb_parse, None, 0, > 'data.png') > > The other issue is freevo not recognizing the mplayer error. If I enter > "mplayer -vo png:z=1:outdir=/tmp ..." on the command line I get an > error (telling me that outdir is not supported) and mplayer crashes. > I think freevo should somehow be able to detect this error/crash > and not just hang forever. Maybe some kind of race condition? > > so long, > > Hias > > ------------------------------------------------------------------------------ > The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your > production scanning environment may not be a perfect world - but thanks to > Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 > Series Scanner you'll get full speed at 300 dpi even with all image > processing features enabled. http://p.sf.net/sfu/kodak-com > _______________________________________________ > Freevo-devel mailing list > Freevo-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/freevo-devel > ------------------------------------------------------------------------------ The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your production scanning environment may not be a perfect world - but thanks to Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700 Series Scanner you'll get full speed at 300 dpi even with all image processing features enabled. http://p.sf.net/sfu/kodak-com _______________________________________________ Freevo-devel mailing list Freevo-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-devel