Hi!

My wife just suffered from a Freevo crash which was obviously the cause of an 
unreadable MP3 file from a CDROM.  The log contained an appropriate "foo not 
found" message, but then a traceback from an error in stop(), which tried to 
stop self.plugins, which was empty since play() never came to initialize 
them.  Attached is a minimal patch for that.  (I hope it's OK if I don't use 
the tracker for this tiny oneliner - I simply hate the SF tracker, sorry.)

While creating the diff, I found a local change in mplayervbr.py, and I had 
the idea to compare mplayer.py and mplayervbr.py.  Apparently, the latter has 
not received the same attention, enhancements and bugfixes, and I really 
wonder if it should be even there?  The initial commit message was:

> r5731 | outlyer | 2004-06-10 02:47:38 +0200 (Do, 10 Jun 2004) | 9 lines
>
> This plugin uses the enhanced mplayer seeking mechanism for VBR
> files. If you have a lot of VBR files, you may want to try it
> to get more accurate seeking. It also works around a problem with
> the mplayer VBR support which is why it's more than just a change
> to the command-line.
>
> I've found it is far more accurate (pretty much 100%) when seeking through
> VBR files. (i.e. the counter actually matches the position in the file)

But apparently the whole mplayer.py code was duplicated just to 
add -hr-mp3-seek for .mp3 playback.  I propose to remove mplayervbr.py 
altogether, and just add the option to mplayer.py.  AFAICS, the only 
disadvantage of that option according to the manpage is: "Can be slow 
especially when seeking backwards since it  has to rewind to the beginning to 
find an exact frame position."  IMHO it's perfectly OK, and if someone 
complains, I would rather introduce an option to turn it off and still have 
it on by default.

-- 
Ciao, /  /                                                    .o.
     /--/                                                     ..o
    /  / ANS                                                  ooo
Index: src/audio/plugins/mplayer.py
===================================================================
--- src/audio/plugins/mplayer.py	(Revision 10156)
+++ src/audio/plugins/mplayer.py	(Arbeitskopie)
@@ -111,6 +111,7 @@
         filename       = item.filename
 
         if filename and not os.path.isfile(filename):
+            self.plugins = ()
             return _('%s\nnot found!') % Unicode(item.url)
 
         if not filename:

Attachment: signature.asc
Description: This is a digitally signed message part.

-------------------------------------------------------------------------
SF.Net email is sponsored by: The Future of Linux Business White Paper
from Novell.  From the desktop to the data center, Linux is going
mainstream.  Let it simplify your IT future.
http://altfarm.mediaplex.com/ad/ck/8857-50307-18918-4
_______________________________________________
Freevo-devel mailing list
Freevo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freevo-devel

Reply via email to