Paul Sijben wrote: Great work Paul, that must have been quite a job.
I have a problem with patches like this because I don't know which mplayer.py you are taking about. There are three: ./src/tv/plugins/mplayer.py ./src/audio/plugins/mplayer.py ./src/video/plugins/mplayer.py Would you be so kind and do a patch against the rel-1-6 and report this as a bug. I will class this as a bug because the old code was horrible. Duncan > Ok you have been seeing the problem I (and others had with unichrome and > freevo). I seem to have got the solution now. > > A good compile of mplayer 1.0rc1 (for a certain definition of good) and > the attached patch for video/plugins/mplayer.py will do the trick (the > patch is against freevo 1.6.1). Note I am using a recent unichrome build. > > Actually the attached freevo patch works for all kinds of video outputs > that require a different vo setting for different classes of movies. > > So if you have a unichrome system (possibly an EPIA board) put this in > your local_conf.py in the mplayer section and apply the patch. It tells > freevo to use the vo device "xvmc:deint-bob" with option "-vc > ffmpeg12mc" when playing mpeg2 (the bob deinterlace option I found to be > necessary, it will play with less CPU usage without it but the image > will be flickery sometimes, so you may try simply "xvmc" if you want > even less CPU usage). For all other movies it will use "xvidix" using a > different kind of hardware acceleration. > > MPLAYER_VO_DEV_HWACCEL = "xvmc:deint-bob" > MPLAYER_HWACCEL_SUFFIX=["mpeg","mpg","vob"] > MPLAYER_VO_DEV = "xvidix" > MPLAYER_VO_DEV_OPTS_HWACCEL='-vc ffmpeg12mc' > > of course as well as having "mpeg","mpg","vob" in the > VIDEO_MPLAYER_SUFFIX list. > > and put > colorkey=0x000000 > in your .mplayer/config (it always failed when I tried to put it on the > command line but this works too) > > and put > libviaXvMC.so.1 > in /etc/X11/XvMCConfig > > Now coming to the point of a good build of mplayer may be simple or > hard for you. In all cases you will need some patches. Some exchanges > with Davin Desborough and myself have resulted in the following recipe. > The first three lines are relevant if you are on Ubuntu or some other > debian derivative, of you are on another linux flavour, you need to > resolve it in another way. > > add deb-src to /etc/apt/sources.list if you don't have it > sudo apt-get update > sudo apt-get build-dep mplayer > #OK so we now have all the dependencies sorted > wget > ftp://ftp.fu-berlin.de/unix/X11/multimedia/MPlayer/releases/MPlayer-1.0rc1.tar.bz2 > wget > http://wiki.openchrome.org/pipermail/openchrome-users/attachments/20061023/6cdd63fd/mplayer.tar.obj > tar xvf mplayer.tar.obj > bunzip2 MPlayer-1.0rc1.tar.bz2 > tar xvf MPlayer-1.0rc1.tar > cd MPlayer-1.0rc1/ > patch -p1 -i ../mplayer/MPlayer-1.0rc1-openchrome_xvmc_vld.patch > patch -p1 -i ../mplayer/MPlayer-1.0rc1-remove_bobdeint.patch > patch -p1 -i ../mplayer/MPlayer-1.0rc1-openchrome_bob.patch > ./configure --prefix=/usr --enable-xvmc --with-xvmclib=XvMCW > make > sudo make install > > OK, you now may be set, or you may be not. Try to play some audio with > mplayer. If it sounds good, you are ready. > If it sounds horrible you are likely on a VIA C-2 or AMD CPU. There > appears to be a bug in mp3lib that is triggered on CPUs with MMX or some > such speedup tech. This is fixed in the svn build of mplayer. so check > that out in the way indicated on the mplayer site. I tried applying the > unichrome patches manually to the svn tree but that failed, so I ended > up configuring that tree too with the same options as I built 1.0rc1. > When it is configured copy over the mp3lib directory to the 1.0rc1 tree > as well as mpcommon.mak . Now build your 1.0rc1 tree again (a make clean > before doing that make might not hurt, I guess). I found that the > resulting mplayer works just fine. > > At this point I am using just some 25% of total CPU power on my 600Mhz > EPIA board while playing a recorded TV prog (recorded with ivtv). Using > mplayer I can stop the show and can resume playback later. Also I found > that mplayer is far more responsive to input from the remote control > than xine. > > So after all the hard work I am a happy camper. So I hope this will give > you what you need to! > BTW: Davin offered to put all of this in a more verbose version in the > Wiki so I'll gladly let him have the honor of doing that :-) > BTW2: I suggest this patch to be included in the main freevo tree as > many people are running freevo on EPIA and other unichrome setups. > > > > ------------------------------------------------------------------------ > > --- mplayer.py 2006-11-30 17:45:33.000000000 +0100 > +++ mplayer.py-orig 2006-11-28 12:46:11.000000000 +0100 > @@ -53,8 +53,7 @@ > def __init__(self): > # create plugin structure > plugin.Plugin.__init__(self) > - if not hasattr(config,'MPLAYER_HWACCEL_SUFFIX'): > - config.MPLAYER_HWACCEL_SUFFIX=[] > + > # register mplayer as the object to play video > plugin.register(MPlayer(), plugin.VIDEO_PLAYER, True) > > @@ -110,13 +109,6 @@ > self.item_length = -1 > self.item.elapsed = 0 > > - #XXX PS > - VODEV=config.MPLAYER_VO_DEV > - VODEVOPTS=config.MPLAYER_VO_DEV_OPTS > - if item.mimetype in config.MPLAYER_HWACCEL_SUFFIX: > - VODEV=config.MPLAYER_VO_DEV_HWACCEL > - VODEVOPTS=config.MPLAYER_VO_DEV_OPTS_HWACCEL > - > if mode == 'file': > url = item.url[6:] > self.item_info = mmpython.parse(url) > @@ -153,8 +145,6 @@ > additional_args = [] > > if mode == 'dvd': > - VODEV=config.MPLAYER_VO_DEV_HWACCEL > - VODEVOPTS=config.MPLAYER_VO_DEV_OPTS_HWACCEL > if config.DVD_LANG_PREF: > # There are some bad mastered DVDs out there. E.g. the > specials on > # the German Babylon 5 Season 2 disc claim they have more > than one > @@ -205,9 +195,8 @@ > mode = 'default' > > # Mplayer command and standard arguments > - command += [ '-v', '-vo', > - VODEV] > - command += VODEVOPTS.split(' ') > + command += [ '-v', '-vo', config.MPLAYER_VO_DEV + > + config.MPLAYER_VO_DEV_OPTS ] > > # mode specific args > command += config.MPLAYER_ARGS[mode].split(' ') > > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys - and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > > > ------------------------------------------------------------------------ > > _______________________________________________ > Freevo-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/freevo-users ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Freevo-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freevo-users
