Three MPlayer and Xine issues
On my ThinkPad T60 with ATI Mobility Radeon X1300 I use Slackware 13.0 with custom generic smp kernel 18.104.22.168 (the only difference between original and my custom kernel is replacing Tuz by Tux). Using these machine and system I encountered a few problems with playing movies from DVD discs and AVI files with MPlayer and Xine.
Aspect ratio issue (PARTIALLY SOLVED -- see: posts #9 and #10)
In that thread: Random system hang ups I described the problem caused by some dockable applications for Window Maker. The only method to avoid system hang ups is in my case to disable DRI and DRI2 in xorg.conf.
With DRI disabled MPlayer doesn't scale AVI files to full screen mode and scales panoramic DVD movies to 4:3 format changing them aspect ratio. Xine works well with both AVIs and DVDs.
So my first question is: Is there any method to enable MPlayer valid scaling with disabled DRI?
Skipping frames issue (SOLVED -- see: post #2)
When I try to play movies from DVDs with Xine it doesn't play them in a smooth way but skips from frame to frame – in small steps with DRI enabled and in big steps with DRI disabled. I encountered the similar problem in the past: Dark gray text on black background or psychedelic colors and 99% CPU in use. Then I installed fglrx driver by ATI to use it instead of generic radeon driver and I resolved the problem.
Now I can't install fglrx driver in the system (the newest version for Radeon Mobility X1300 is: ati-driver-installer-9-3-x86.x86_64.run).
Building a package for Slackware causes a lot of errors:
# sh ati-driver-installer-9-3-x86.x86_64.run --buildpkg Slackware/All
# sh ati-driver-installer-9-3-x86.x86_64.run
So my second question is: Is there any method to force Xine to display DVD movies in a smooth way?
``The Big Lebowski'' issue (SOLVED -- see posts: #3, #4 and #5)
With DRI enabled MPlayer and Xine are able to display movies though Xine skips frames. But some movies cause problems...
Yesterday I tried to watch ``The Big Lebowski'' DVD. MPlayer ended the work immediately:
$ mplayer dvd://
Moreover when I was unable to play yesterday ``The Big Lebowski'' with MPlayer I tried to play it with Xine. It played first half of the movie without problems and then stopped. Since that case when I run Xine it doesn't play movies smoothly but skips frames as I described it above.
So my third question is: How can I avoid problems such as caused by ``The Big Lebowski'' played with MPlayer?
Skipping frames issue solved
I ran xine-check and the program said that I have disabled DMA for drive /dev/hda (DVD/CD-RW). It was always enabled. When I watched the movie yesterday something wrong happened and Xine or the system disabled DMA. Now I ran the command hdparm -d1 /dev/hda and Xine works smoothly again.
But xine-check found two further problems:
With mplayer, try a different video out driver. -vo help will list what is available. Before I smashed my ATI x1600 cards I had to use -vo gl (or -vo gl2) to get something close to usable.
Does the radeonhd driver work with you chipset? I've read blurbs that this driver is better than radeon.
Taking a stab in the dark here - but perhaps XVideo and overlay are not being used because they require Direct Rendering?
I honestly do feel for those people with Laptops and the ATI chipset. With a desktop it's usually a non issue to replace the GPU with a working, and supported part. Not so easy to just replace a laptop.
Aspect ratio issue (cont.)
I tried xv, x11, gl and gl2 drivers with DRI disabled. Driver xv doesn't display video, driver x11 changes aspect ratio, drivers gl and gl2 scale image properly but display video in slow motion and after a dozen or so seconds the sound starts to hiccup.
``The Big Lebowski'' issue (cont.)
I ran MPlayer with the command mplayer dvd:// -msglevel all=6.
In the case of ``Natural Born Killers'' (MPlayer plays the movie) the output ends with the messages:
``The Big Lebowski'' issue solved
Thank you for DMA and VTS-TMAPT related errors explanations. It means ``The Big Lebowski'' DVD is invalid. So ``The Big Lebowski'' issue is solved.
I tried different drivers. I wrote about it in the previous post.
In my case radeonhd works even worse than radeon: it changes aspect ratio even with DRI enabled.
I tried to enable XVideo and VideoOverlay as well with DRI disabled as with enabled using both radeon and radeonhd. In any case these options weren't used.
Thank you for the mention about laptops. It remembered me that I have the second machine. I tested my ThinkPad T40 with ATI Mobility Radeon 7500 and it works flawlessly with DRI enabled. I didn't watched the entire ``The Big Lebowski'' with Xine so I don't know if it could disable DMA on the second machine. Of course MPlayer wasn't able to play that movie.
The difference between T40 and T60 is the difference between IBM and Lenovo. I had a lot of problems with T40 but I have a lot more of problems with T60.
Thank you very much for your useful post!
I tested all drivers with DRI disabled -- none of them is satisfactory:
xv -- no video
x11 -- invalid aspect ratio
xover -- no video
gl -- slow motion picture and hiccuping sound
gl2 -- as above
dga -- aborts the program
sdl -- valid aspect ratio but bad synchronization of picture and sound
fbdev -- doubled picture in psychedelic colors
fbdev2 -- as above
svga -- error message: cannot open /dev/mem
aa -- ahem...
caca -- as above
v4l2 -- no video
xvidix -- no video
cvidix -- no video
null -- as expected...
mpegpes -- no video
yuv4mpeg -- no video
png -- no video
jpeg -- no video
gif89a -- no video
tga -- no video
pnm -- no video
md5sum -- no video
The 7500 has been around for some time now. I actually still have a 7500 32mb PCI card lying around - just in case. This chipset has been thoroughly supported by the opensource driver for as-long-as-I-can-remember (at least 6 or 7 years).
The x1x00 GPUs were part of the not so long ago AMD/ATI released hardware white-papers. Every now and then I read a blog post or two on the development of these open-source drivers. Your x1300 and my x1600 (agp) are part of the same R500 GPU series. Everything I've read states that the driver is pretty-much stable as far as 2d goes, and usable for some 3d. Hardware overlays and video rendering are reported as working, and working quite well. Your results, along with my own, show that these reporters have the magic combination we evidently do not have :).
Current Slackware-13.0 xf86-video-ati is at version 6.12.2, 6.12.4 is available from Xorg with this in the commit log - Fix textured Xv.
The ati driver supports these Mobility x1300 PCI_IDS
Just in case this wasn't already known
Option "AccelMethod" (XAA/EXA)
Option "DMAForXv" (on/off)
xv, x11, gl, gl2, and sdl are the most common render engines. xv, gl, gl2 use hardware overlay.
I tried both AccelMethod options. X Window didn't start in both cases and complained:
I had make some mistake. I tried to put Option "AccelMethod" "EXA" in xorg.conf once again and now it works. Moreover it completely resolves the problem with random system hang ups so I can load DRI and DRI2 in xorg.conf.
I described it here and here.
Thank you disturbed1 for your assistance once again.
I tried DMAForXv option. X Window loaded the driver but seemed to work the same as before.
Xorg.0.log with DRI disabled:
Since you intend to write to the ATI experts maybe you'll find some time to look at that thread: Random system hang ups. I described there an other problem related to my Radeon X1300.
I'm impressed how lot of heart you put into that thread. Thank you very much!
I compiled xf86-video-ati drivers in versions 6.9.0 (default in Slackware 12.2) and 6.12.4 (the newest one) and compared them to xf86-video-ati driver in version 6.12.2 (default in Slackware 13.0). To test them I used the method described here. I performed these tests in Slackware 13.0 with DRI and DRI2 enabled. With DRI* disabled my machine works well. With DRI* enabled it hangs up from time to time.
I did three attempts with each driver version. I counted the time from the moment when I pressed and kept Enter key after typing mc command to the moment when the machine hung up. The following results are numbers of seconds from pressing Enter to hang up the machine:
● xf86-video-ati 6.9.0 -- 1, 3, 2,
● xf86-video-ati 6.12.2 -- 7, 1, 3
● xf86-video-ati 6.12.4 -- 53, 19, 23
XF86 Video ATI drivers are accessible here.
Aspect ratio issue partially solved
The newest driver version is significantly better than the previous versions. It seems that Xorg with that newest driver should work without hang up 8.77 times longer than with the default driver. Assuming that before I encountered up to three hang ups a day I suppose that now I can expect up to three hang ups a week. So I can leave DRI* enabled in my xorg.conf.
That resolves partially two problems: with random system hang ups and with invalid aspect ratio after disabling DRI.
I compared Xorg.0.logs produced by Xorg with both drivers. They're similar but with the newest driver disappeared that line:
As always I thank you for your kind assistance.
Now I start to read recommended article...
I removed xorg.conf at all and now Xorg with ati driver version 6.12.4 loads successfully XVideo extension and YV12 overlays so xine-check commands stopped to complain and when I play movies with Xine CPU/MEM usages are significantly lower than before. So ati driver version 6.12.4 is much better than version 6.12.2.
I tested the same drivers as above (see: post #6) with DRI enabled -- in three cases the results were satisfactory:
xv -- ok
gl -- black screen and playback
gl2 -- ok
sdl -- ok
The rest of the results was the same as before.
Message edited according to suggestions by BrZ
For your convenience here's SlackBuild script building xf86-video-ati driver version 6.12.4:
You may want to compile also newest MesaDemos, MesaGLUT and MesaLib so this is the third SlackBuild script building mesa version 7.5.2:
Xorg Server is accessible here.
MesaDemos, MesaGLUT and MesaLib are accessible here.
Well, -zoom option works indeed with DRI disabled but with that option the movie loses sound synchronization.
There is no way back -- I have to find the way to properly configure Slackware 13.0.
If you want to stick with Slackware 13.0, you could try downgrading Xorg and the kernel to use fglrx 9.3. Otherwise you will have to stick with the open source drivers.
|All times are GMT -5. The time now is 05:42 PM.|