Very bad video experience in AMD C50/ radeon 6250

Hello, I just installed opensuse 12.3 in my laptop 1215B, and I dualboot with w7. But when I try play video 1080p it’s so laggy, choppy or freeze sometime, and eating my 100% cpu. I installed fglrx but still the same. I try with SMplayer, VLC, Totem, Mplayer, caffeine. The best result if I play with smplayer and enable cpu thread 2, and use output codec AVIVO video, but still my cpu 100%. The same video I play in w7 only eat about 40% cpu. Please help me so I can play it in my Opensuse

Here is the screenshot
http://1.bp.blogspot.com/-elISxMJanSw/UcEK-xnfzjI/AAAAAAAAANo/LprjFYVbZEg/s1600/playvideo.pnghttp://3.bp.blogspot.com/-0V_ajI_sqh4/UcELB8yWXQI/AAAAAAAAANw/06QHvaXJLIY/s1600/vlccapture.png

Try changing the video outputs in smplayer

did you mean video output driver? I have tried, and AVIVO is the best among the worse :smiley: . but still consume alot CPU resources

try mplayer2 and smplayer2 and see whether it makes a difference.

Briefly:

  • you didn’t mention what codec the video uses; 1080p means nothing in of itself. However …
  • while your adapter contains a UVD engine, it is not being utilized with the OSS drivers because such support only recently became available and openSUSE does not natively contain it yet … you’ll have to wait until 13.1 for it or, if you want it now, you’ll have to update the requisite components yourself – I listed them here: https://forums.opensuse.org/english/get-technical-help-here/applications/484656-kaffeine-xine-vlc-ok-opensuse-12-3-a.html#post2564962
  • with the catalyst/fglrx, you can use the UVD engine, however, its not straight out of the box … its done via a XvBA backend to VA-API … the backend stopped being maintained for a while and I stopped paying attention, but I believe that XBMC/OpenELEC have picked it up again in the last year or so… see them for further details
  • As the video decoding is being done in software under Linux, as you are right now, and given as your processor is relatively anaemic, its likely even legacy codecs would give it trouble at such resolution … never mind more modern ones
  • The win7 utilization value looks high to me, though I don’t have experience with such a setup … perhaps there is some post processing going on too.

Or you can try it out now via the “Gears on Gallium” live distro (it’s based upon openSUSE and features all the latest code in the OSS graphics driver stack) … very cool !

  • I downloaded it from youtube. h264 maybe

Why It’s very difficult for linux to play video correctly? or I just too stupid for this. … :smiley: , thankyou for you help brother, maybe AMD driver is not good enough for now

thank you, will try it

i tried galium distro, but still get hundred persen cpu load when playing hidef video, maybe better waiting for 13.1 :(:frowning:

No, its working fine. I’m posting from the GoG distro right now

You have to evoke it (use of the UVD engine) at the application level too.

First, though, you should be able to confirm/see that the UVD is being exposed on your system via:

vdpauinfo

from the terminal output of that, you should see something to the likes of:

gog@linux:~> vdpauinfo
display: :0   screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0

Video surface:

name   width height types
-------------------------------------------
420    16384 16384  NV12 
422    16384 16384  NV12 
444    16384 16384  NV12 

Decoder capabilities:

name               level macbs width height
-------------------------------------------
MPEG1                16  9216  2048  1152
MPEG2_SIMPLE         16  9216  2048  1152
MPEG2_MAIN           16  9216  2048  1152
H264_BASELINE        16  9216  2048  1152
H264_MAIN            16  9216  2048  1152
H264_HIGH            16  9216  2048  1152
VC1_SIMPLE           16  9216  2048  1152
VC1_MAIN             16  9216  2048  1152
VC1_ADVANCED         16  9216  2048  1152
MPEG4_PART2_SP       16  9216  2048  1152
MPEG4_PART2_ASP      16  9216  2048  1152

... blah blah blah ....

If you don’t, then perhaps the required UVD firmware for the adaptor isn’t included in the distro, or that your adapter is one of the edge cases that is currently not supported (though I suspect that you will find that it is indeed supported and ready and waiting to be used)

So, if you do confirm its availability, then here’s two examples of how to enable it for testing with the Sintel trailer:

  • in UMPlayer, goto Options > Preferences > General (on the LHS of the window) > Video tab (on the RHS of the window) > Output driver dropdown and select vdpau.
  • on the commandline: mplayer -vo vdpau -vc ffh264vdpau, /opt/Sintel_Trailer.1080p.DivX_Plus_HD.mkv

And so forth and so forth for other apps that you may wish to test with

Interestingly I see single digit cpu utilization on the two core of this system with UMPlayer (which is simply a frontend to MPlayer), whereas mid-to-high teen utilization with MPlayer itself … it appears that MPlayer is doing something funny (as evidenced by the output):

VO: [vdpau] 1920x818 => 1920x818 H.264 VDPAU acceleration 
[VD_FFMPEG] XVMC-accelerated MPEG-2.

PS - you can use htop to monitor the cpu utilization (run it in a terminal)

yeah, probably … there is a good app, that also integrates into the dolphin context menus, which can tell you – its called mediainfogui (MediaInfo - GUI Main) and is available in the starndard repos IIRC, and if not, then from OBS

Why It’s very difficult for linux to play video correctly? or I just too stupid for this
Mainly due to the encumberment of patents in vidoe codecs … so, unfortunately, in distro’s like openSUSE, you have to jump through a few hoops first to get it going

maybe AMD driver is not good enough for now
naw, the OSS drivers are fine now (see my post above)

Hi Tyler, I try gallium n change codec to vdpau, it’s work. btw, how to make opensuse with fglrx work like that? I mean enabling vdpau, because when I check vdpauinfo in opensuse the result is like missing something (forget to take SS).

That’s good … what sort of cpu utilization figures you were seeing (I’m just curious as to how it compares to your Windows 7 playback numbers)

btw, how to make opensuse with fglrx work like that? I mean enabling vdpau, because when I check vdpauinfo in opensuse the result is like missing something (forget to take SS).
The result is missing something because it is reflective of the state (current in 12.3) with the OSS driver stack [to expand upon that further – its reflective of the (current) video accel support available in the OSS stack through the vdpau state tracker using shaders, which is different then using the UVD engine] … I touched upon that here:

As for using the UVD with fglrx, you don’t access it via vdpau; as mentioned earlier:

Halo Tyler, I have installed fglrx before, so I want use UVD like in Gallium and I installed VAAPI

wheelloader@linux-uac5:~> vainfo
libva info: VA-API version 0.33.0
libva info: User requested driver 'fglrx'
libva info: Trying to open /usr/lib64/dri/fglrx_drv_video.so
libva info: Found init function __vaDriverInit_0_32
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.33 (libva 1.1.0)
vainfo: Driver version: Splitted-Desktop Systems XvBA backend for VA-API - 0.8.0
vainfo: Supported profile and entrypoints
      VAProfileH264High               : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
wheelloader@linux-uac5:~> 


I think it mean succesful, and how to make Mplayer use that driver? there is no xvBA driver choice in Mplayer
Thanks for your help, and sorry about my grammar

Indeed, looks right AFAIK.

I’m just poking around in Yast right now and, while I wasn’t aware of it before, I see now that the XvBA backend is available (via the packman repo) … you might also be interested in the gstreamer va-api plugins (via openSUSE repo), but I don’t know if they are any use or not ]

how to make Mplayer use that driver? there is no xvBA driver choice in Mplayer
ya, only a couple of apps have direct support for XvBA … so, instead, you have to use VA-API, which, by way of the XvBA backend to VA-API, allows use of the UVD engine … i.e. MPlayer play this video using VAAPI → routes through XvBA based VAAPI backend → exposes UVD engine.

in other words, any app that supports VAAPI (which is most, if not all, of the popular ones) will allow you to use the UVD (now that you have the backend in place), provided you set VA-API as the output driver/rendering mechanism within that app

Here, see this stuff for more details (caveat: I have no idea how current the information is in some of the links, but suspect that it is still largely relevant):