Active Topics

 



Notices


Reply
Thread Tools
Posts: 503 | Thanked: 267 times | Joined on Jul 2006 @ Helsinki
#1
Many of you probably know that mplayer uses '-vo omapfb' video output code with direct framebuffer access in order to improve performance. But XV can be almost as fast with the help of some configuration magic

Using '-vo xv:ck-method=auto -dr -nomenu' options provides the fastest video output using XV.

Because Canola and other GUI frontends use MPayer with XV video output in order to embed it into a window, getting the fastest XV performance is quite important.

But everything comes with a price. The use of '-dr -nomenu' options disables OSD menu in MPlayer and also subtitles are buggy in version 1.0rc1. On the other hand, interoperability with X server is much better and visual glitches on switching from/to mplayer window are gone.

The following test script can be used for benchmarking:
Code:
#!/bin/sh

echo xv:ck-method=auto
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto $1 | grep BENCHMARKs

echo xv:ck-method=auto -dr -nomenu
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto -dr -nomenu $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto -dr -nomenu $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto -dr -nomenu $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto -dr -nomenu $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo xv:ck-method=auto -dr -nomenu $1 | grep BENCHMARKs

echo omapfb
mplayer -benchmark -quiet -nosound -endpos 100 -vo omapfb $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo omapfb $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo omapfb $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo omapfb $1 | grep BENCHMARKs
mplayer -benchmark -quiet -nosound -endpos 100 -vo omapfb $1 | grep BENCHMARKs
The results of running it are the following (the last number is the total test execution time in seconds, lower is better):
Code:
$ sh bench.sh testvideo.avi
xv:ck-method=auto
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  52.633s VO:  16.010s A:   0.000s Sys:   0.759s =   69.402s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  52.894s VO:  15.921s A:   0.000s Sys:   0.763s =   69.578s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  52.862s VO:  15.802s A:   0.000s Sys:   0.743s =   69.407s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  51.493s VO:  16.655s A:   0.000s Sys:   0.741s =   68.888s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  50.837s VO:  16.928s A:   0.000s Sys:   0.746s =   68.511s
xv:ck-method=auto -dr -nomenu
BENCHMARKs: VC:  50.891s VO:  13.989s A:   0.000s Sys:   0.724s =   65.605s
BENCHMARKs: VC:  51.464s VO:  13.898s A:   0.000s Sys:   0.731s =   66.093s
BENCHMARKs: VC:  50.493s VO:  14.268s A:   0.000s Sys:   0.718s =   65.479s
BENCHMARKs: VC:  51.064s VO:  13.888s A:   0.000s Sys:   0.738s =   65.691s
BENCHMARKs: VC:  50.765s VO:  14.114s A:   0.000s Sys:   0.725s =   65.604s
omapfb
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  51.636s VO:  13.303s A:   0.000s Sys:   0.705s =   65.645s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  51.392s VO:  13.368s A:   0.000s Sys:   0.704s =   65.463s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  51.507s VO:  13.064s A:   0.000s Sys:   0.713s =   65.283s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  50.178s VO:  13.404s A:   0.000s Sys:   0.700s =   64.282s
[MENU] Can't open menu config file: /home/user/.mplayer/menu.conf
BENCHMARKs: VC:  51.273s VO:  13.343s A:   0.000s Sys:   0.705s =   65.320s
 

The Following 17 Users Say Thank You to Serge For This Useful Post:
pycage's Avatar
Posts: 3,404 | Thanked: 4,474 times | Joined on Oct 2005 @ Germany
#2
Thanks for sharing this information with us.

Since which version does mplayer support these settings?
 
Posts: 503 | Thanked: 267 times | Joined on Jul 2006 @ Helsinki
#3
Originally Posted by pycage View Post
Thanks for sharing this information with us.

Since which version does mplayer support these settings?
MPlayer has always supported these configuration options.

The point is that XV got ARMv6 optimizations for the color format conversion (https://bugs.maemo.org/show_bug.cgi?id=1278), but also now supports colorkey with the latest diablo update.

And XV is fast not in all cases on N8x0 devices. There are quite a number of cases when it can fallback to a slow implementation. For the example of unfavourable placement one can see https://bugs.maemo.org/show_bug.cgi?id=1281

Using a colorkey (and mplayer tries to mess with colorkey by default) also slows everything down. Having something displayed over the video overlay (poweroff menu or audio volume settings dialog, or whatever) also hurts performance.
 

The Following User Says Thank You to Serge For This Useful Post:
lfelipe's Avatar
Posts: 66 | Thanked: 16 times | Joined on Nov 2008 @ São Paulo
#4
With Canola, you can specify the ck-method by editing $HOME/.atabake/config and changing the video output on the Mplayer section from xv to xv:ck-method=auto.
I'm going to try out the -dr option as well, and possibly include an option on atabake's config to allow the user to give specific commands for mplayer.
Thanks alot for the tip
 

The Following User Says Thank You to lfelipe For This Useful Post:
Reply

Tags
canola, mplayer, performance, video


 
Forum Jump


All times are GMT. The time now is 09:02.