devel.reinikainen.net
HomeDocumentsCodeBugtrackerSearchreinikainen.netJB Consulting
Home arrow Technical Documents arrow Linux: Desktop Solutions arrow Ubuntu Linux: MPlayer + Console Framebuffer + ATI TV-Out
Ubuntu Linux: MPlayer + Console Framebuffer + ATI TV-Out PDF Print
User Rating: / 2
PoorBest 
Mar 21, 2007 at 09:50 AM

Introduction

Hardware: ATI Radeon 9550 AGP on MSI K8MM-V with AMD 2800+ 64-bit.
Software: Ubuntu Linux 5.10 (Breezy Badger), MPlayer 1.0pre7try2, Linux kernel 2.6.15.4.

This was a b*tch to set up. So if you must, here is a guide. But read the conclusion first ;-)

Kernel Configuration

IMPORTANT: ONLY compile in VESAFB. You might be tempted to compile in radeonfb, but it DOES NOT WORK. Compiling both vesafb and radeonfb will result in driver conflicts. MTRR support speeds things up.

No kernel patches (such as vesafb-tng, which does not work on AMD64) are needed.

Code maturity level options  --->
  [*] Prompt for development and/or incomplete code/drivers

Processor type and features  --->
  [*] MTRR (Memory Type Range Register) support

Device drivers  --->
  Graphics support --->
    <*> Support for frame buffer devices
    [*]   VESA VGA graphics support


MPlayer Installation

Note: VIDIX support is not available at the moment on AMD64. Also, libgtk2.0-dev and gcc-4.0 packages will not work with current MPlayer versions. You need libgtk1.2-dev and gcc-3.3.

There are indeed packages for both mplayer and mplayer-amd64, but both crashed all the time on my system. I decided to compile from source.


# apt-get install gcc-3.3 libgtk1.2-dev
$ mkdir -p /usr/lib/codecs; cd /usr/lib/codecs
$ tar xfvj essential.tar.bz2

$ tar xfvj mplayer-<version>.tar.bz2
$ cd mplayer-<version>
$ ./configure --enable-gui
$ make
# make install

$ cd /usr/local/share/mplayer/font/
$ wget http://www1.mplayerhq.hu/MPlayer/releases/fonts/font-arial-iso-8859-1.tar.bz2
$ tar xfvj font-arial-iso-8859-1.tar.bz2

GRUB

video= option

You must add video=vesafb:800x600-16@50 to the kernel line. Just adding video=vesafb or video=vesafb: does not work (the vesafb driver does not get loaded). The mode after the colon doesn't seem to do anything, as the mode is controlled using the vga= option.

vga= option

Some guides tell you to use 7xx modes. These DO NOT WORK (scrambled tv-out). Also, just using a mode of 315 (i.e. without the 0x in front) does also not work (also scrambles tv-out). The correct format is:

vga=0x315

Feel free to use other 0x3xx modes, too (see /usr/src/linux/Documentation/fb/vesafb.txt for a table of modes). Just remember the 0x in front. Also, vga=ask will fail horribly.

Usage

Reboot. Open up a console. Type:

mplayer -vo fbdev -vf scale:800x600:1 movie.avi

Enjoy your movie without the overhead of X! But remember to keep hands off Ctrl+Alt+Fx buttons (console switching). Switching a console may cause some display corruption.

Debugging

dmesg | grep fb is your friend.

Conclusion

Just use Xv. MPlayer on a framebuffer with software scaling uses about 70-75% CPU on my machine. The same value in X using XV is about 40-45%.

Further documentation


User Comments

Comment by GUEST on 2007-09-09 02:44:40
has anyone got this working with the ATI 9200 serious.  
My friend thinks that I should get a new graphics card such as nvidea, but I don't want spend extra money where I don't really have to if that makes any sense. 
 
it would be nice if ubuntu guys supported the ati driver by default...so it is not much of a hassle for someone like myself...who knows little about computers etc. 
 
i like ubuntu a lot...and love how it works when compared with windows xp etc...but windows seem to be supported more when it comes to hardward drviers than linux is. 
 
anyway, i am not going to switch just yet..will wait till linux supports more hardward and software such as photoshop. 

Security Check. Please enter this code.

Copyright © 2007 Jani Reinikainen. All rights reserved.
Permission granted to replicate information found on these pages, provided that all copyright headers/footers remain intact.