The key was to disable DRI. The sis driver enables DRI by default, and
allocates:
* 12288KB if more than 16MB of total video RAM is available,
* 8192KB if between 12 and 16MB of video RAM is available,
* 4096KB in all other cases.
man sis recommends "setting the total video memory in the BIOS setup
utility to 64MB", but of course, my laptop only has 8Mb of (shared)
Video RAM, so the default driver setup was allocating 4M to DRI, and 4M
to framebuffer.
The magic incantation required in xorg.conf follows:
#Section "Device"
# Identifier "Configured Video Device"
#EndSection
Section "Device"
Identifier "SiS VGA chipset"
VendorName "SiS"
BoardName "SiS"
Driver "sis"
Option "DRI" "off"
EndSection
I haven't found any adequate explanation online of the "Configured Video
Device" stanza, but I found that it must be commented out for my Driver
"sis" section to work.
The result in Xorg.0.log:
(--) SIS(0): VideoRAM: 8192 KB
(II) SIS(0): Using 7676K of framebuffer memory at offset 0K
(--) SIS(0): Hardware supports two video overlays
...
(II) AIGLX: Screen 0 is not DRI capable
What do I lose from this? 2D graphic rendering, I believe.
Now Totem can cheerfully play both DVD and DV-AVI files (from MiniDV
camcorders):
DVD 31% idle (worst case)
DV-AVI 16% idle (worst case)
No difference between windowed and full-screen - the video driver's
doing the work.
How much video RAM do you need to play DVDs? My limited understanding is
that you need 4 bytes per pixel, x2 so that the machine can render into
one framebuffer while displaying the other. Native PAL DVD resolution is
720x576, but most DVDs are anamorphic, meaning that they're rendered
onto the square pixels of the LCD at 1024x 576 (16:9) or 1377x576
(2.39:1, common in feature films). NTSC DVDs only have 480 lines, making
the on-screen resolution 853x480 and 1147x480 respectively. The total
video RAM needed is then:
* 640 x 480 2.5MB
* NTSC 16:9 3.3M
* NTSC 2.39:1 4.4M
* PAL 16:9 4.7M
* PAL 2.39:1 6.4M
Douglas.
Many, many moons ago, Douglas Royds wrote:
All video programs crash with this error when I play video > 640x480
(eg. DVD, DV) - Totem, mplayer, xine, vlc, avidemux, kdenlive, they all
crash.
This is not a physical limitation of the laptop - these programs all
worked fine under Feisty. It fell apart with the Gutsy upgrade, I
believe. mplayer can play DVDs (barely) with the -vo x11 option (this is
an xv problem), but the laptop doesn't really have the snot for that - I
need this graphic chip working.
The laptop has a SiS chipset. Since I last posted on this subject, I
have done a fresh install of Ubuntu Hardy. Interestingly, there is now
no reference to SiS in xorg.conf at all. Looks like Xorg is doing it all
automatically, clever wee thing:
$ grep -i SIS /var/log/Xorg.0.log
(--) PCI:*(1:0:0) Silicon Integrated Systems [SiS] 630/730 PCI/AGP
...
(--) SIS(0): VideoRAM: 8192 KB
(II) SIS(0): Using 4096K of framebuffer memory at offset 0K
(--) SIS(0): Hardware supports two video overlays
...
I've attached the rest of the log. It kind of all looks OK to me, but
I'd be interested to hear if anyone can see any trouble in there.
Thanks,
Douglas.
=======================================================================
This email, including any attachments, is only for the intended
addressee. It is subject to copyright, is confidential and may be
the subject of legal or other privilege, none of which is waived or
lost by reason of this transmission.
If the receiver is not the intended addressee, please accept our
apologies, notify us by return, delete all copies and perform no
other act on the email.
Unfortunately, we cannot warrant that the email has not been
altered or corrupted during transmission.
=======================================================================