Results 1 to 8 of 8

Thread: Open Source drivers and HD video

  1. #1
    Join Date
    Jul 2008
    Posts
    30

    Default Open Source drivers and HD video

    A couple of years back I bought an Acer Aspire One netbook / mini-notebook specifically because it claimed to offer HD video playback and HDMI connections. Almost as soon as I bought it, AMD stopped supporting the included graphics card, even though those cards were still being sold in notebooks (thanks a bundle, AMD!).

    At present, I have it working using the legacy proprietary drivers, but these haven't been updated in ages, restrict me to kernel 3.4 or earlier, and aren't particularly stable! Every so often I get a black screen on booting, and once its started doing that, it takes forever to "unstick" it again!

    Word is that the open source drivers now offer HD video playback via vdpau. I use vdpau on my desktop (nvidia gfx), so I'm quite familiar with compiling software to use that. What I haven't found anywhere is a simple description of what software is required to get hardware video acceleration on the open source drivers. I see lots of obscure references to various versions of mesa, etc, but no definitive instructions on how to get it all to work.

    I'm not particularly interested in 3D graphics or games. I just want HD video, preferably available through the hdmi socket as well for large screen presentations.

    My system is Slackware64-14.0. The graphics card identifies itself via lspci as an ATI RS880M [Radeon HD 4200 series] (and a matching hdmi audio device).

    I'm really hacked off with AMD now, despite having been a loyal customer since the days of the K6-2 processor. An "Idiot's Guide" to getting HD video working under the open source drivers would be much appreciated!

    --
    Pete

  2. #2

    Default

    First: messing with mesa and the xorg drivers by compiling and overwriting libraries might kill your X server. So make sure you know what packages contain the libraries that will be overwritten to be able to reinstall them and restore your x server. Ideally you should be able to do this from the command line.
    AFAIK the difference between 4250 and 4200 is that 4250 has uvd and 4200 doesnt, or 4250 has higher uvd level than the 4200. Also i dont know if uvd IS enabled at all for 42xx series.
    Anyway, the things you need are the following:

    -kernel 3.11 (i suppose 3.9 or 3.10 would work too, but 3.11 has dpm which greatly reduces heat and power consumption). If you use 3.11 you should enable dpm too, adding "radeon.dpm=1" to the kernel command line.

    you can go to
    https://www.kernel.org/
    and get the latest stable and compile it or get the distro version if any.

    -the radeon driver for the X server - version at least 7.1 i think is needed
    You can get it here:
    http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/

    -recent libdrm - 2.4.46 is the latest stable i think. Anyway you need something recent.

    http://cgit.freedesktop.org/mesa/drm/

    -at least v 9.2 mesa libraries, compiled with --enable-vdpau switch.

    http://cgit.freedesktop.org/mesa/mesa/

    Additionally you will need devel libraries for the dependencies required by the non-kernel components, but those vary between distributions and you will have to read the readmes and poke around for them. Debian for example had all of them in its repos.

    *** If you use a 64 bit distro and you want to run 32-bit programs that need 3d accel, uvd etc (STEAM for example), YOU NEED TO INSTALL BOTH 32-bit AND 64-bit mesa, drm libraries!***

    That isnt fun, but thats the way things work. It gave me great headaches on 64 bit Debian coz most devel libs are NOT multiarch by design despite having only one (or more?) overlapping file that is identical on both archs. I just installed the 64 bit ones then extracted the downloaded .deb packages containing the 32 bit ones. Messy, but worked fine so far.

    VDPAU works well usually with recent ish mplayer (of course, that was compiled with vdpau) - but if you use Smplayer or other wrappers, look out cause they can mess stuff up - for example for me Smplayer crashes mplayer if i use VDPAU, but gnome-mplayer works fine.
    Sometimes i have to restart the movie if the first time i get artifacts, but the second time works perfectly. But some movies dont work at all or have artifacts all the time.

    PS i have a A8-5500 APU, that is kinda recent and the radeon driver runs very well on it, but sometimes freezes the computer.

  3. #3
    Join Date
    Sep 2012
    Posts
    88

    Default

    Quote Originally Posted by gradinaruvasile View Post
    AFAIK the difference between 4250 and 4200 is that 4250 has uvd and 4200 doesnt, or 4250 has higher uvd level than the 4200. Also i dont know if uvd IS enabled at all for 42xx series.
    The 4200 does have UVD -- it has UVD2. However, the current support that entered the OSS stack is for UVD 2.2 and greater. Extension of support to chips utilizing earlier UVD variants is (AFAIK) still being investigated .... (the last snippet I saw in regards to this indicated that there had been a degree of success towards realizing that goal, but that there were still bugs to iron out).

  4. #4
    Join Date
    Sep 2012
    Posts
    88

    Default

    Quote Originally Posted by pchristy View Post
    Word is that the open source drivers now offer HD video playback via vdpau.
    As an FYI, there is actually two ways to use VDPAU with contemporary AMD graphics adapter and using the OSS stack:
    • via shaders ... this has been around for some time. In its current form it is limited (in capabilities) and buggy/experimental. No one has done any further development on it in ages because (read me) ... so, while nothing is preventing any further work up of that code, the efforts would be pretty wasteful in light of bullet point two
    • via the UVD engine ... native support was introduced in kernel 3.10


    You, of course, refer to the later pt; UVD. You would also want to distinguish what exactly you mean by "HD video" (i.e. as there are many different video formats that could utilized for a high def. res.)
    Last edited by Tyler_K; 09-15-2013 at 01:26 PM. Reason: originally said "dropped" (as in a code drop) but changed that to intro'd for clarity

  5. #5
    Join Date
    Sep 2012
    Posts
    88

    Default

    Quote Originally Posted by pchristy View Post
    What I haven't found anywhere is a simple description of what software is required to get hardware video acceleration on the open source drivers. I see lots of obscure references to various versions of mesa, etc, but no definitive instructions on how to get it all to work.
    I've seen a number of descriptions, so I don't know why you have had so much trouble tracking down info. In any regard, in addition to the component listing gradinaruvasile provided, one would also need the correct firmware.

    That said, instead of monkeying around with all that, one might be better served to just migrate to a recent {insert your favourite choice of distro here} release that already features/encompasses the necessary/requisite stack components out of the box.

    But, again, none of this currently applies to the OP as his device isn't supported as of yet.
    Last edited by Tyler_K; 09-15-2013 at 01:24 PM. Reason: Changed the reply to general advice and noted that the OP's device is currently unsupported

  6. #6
    Join Date
    Oct 2012
    Posts
    176

    Default

    FYI: If I'm reading correctly, the devs are still going to release code for UVD2...

    Quote Originally Posted by Deathsimple View Post
    Quote Originally Posted by pvautrin View Post
    Hi Chris,
    Now that CIK and PM are out of the way, is UVD1 (rv635) also on your TODO list?

    Pierre
    Yes and no

    Well all the older chips (UVD 1.0 - 2.0) are pretty much the same, when we release something for UVD 2.0 (RS780, RS880, RV790) it probably will also work on UVD 1.0 (R6xx). So I'm pretty sure that when we get UVD 2.0 out we can also release the firmware for UVD 1.0 hardware and so get that working as well.

    On the other hand the UVD 1.0 hardware generation was really really buggy, and I definitely don't have time to sort out all the different bugs and workarounds necessary to get it stable. So support for UVD 1.0 hardware will always be only best effort.

    Christian.
    Last edited by asdfblah; 09-15-2013 at 07:55 PM.

  7. #7

    Default

    Quote Originally Posted by Tyler_K View Post
    In any regard, in addition to the component listing gradinaruvasile provided, one would also need the correct firmware.
    I forgot about that. Sorry.

    Firmware needed for uvd and dpm:

    http://people.freedesktop.org/~agd5f/radeon_ucode/

    These should be put into the /lib/firmware/ directory (reboot needed). I just copied everything there because i wasnt sure which i need exactly and it works.

    If your distro already provides them (Debian Testing does now), no need for them to be copied again.

    PS First time i had to search all over the internet to paste these informations together. Maybe there is some how to somewhere but i didnt find it.

  8. #8
    Join Date
    Jul 2008
    Posts
    30

    Default

    First of all, thanks to everyone for the replies! I think in some way they illustrate my point, in that there seems to be some confusion over what works, what doesn't and what may in the future!

    Extrapolating from the replies, it looks as if, at present, my hardware isn't supported, though it may be in the future. So for the present, I'm stuck with the extremely buggy and out-of-date legacy catalyst driver!

    My reason for wanting all this is to support my HD camera, which provides files as h264/ac3 in an mpeg-ts wrapper. I can use ffmpeg to quickly convert these to an mp4 wrapper, as no transcoding is necessary. Mplayer-vaapi plays both the mts and mp4 files OK, so I know the hardware is capable of this, as long as I can get the graphics system to boot correctly in the first place, which is not guaranteed!

    I'm familiar with where to put firmware, and one of the beauties of Slackware is that no -dev packages are necessary. Everything is built in as the original developers intended. You may occasionally have to add a library here or there, but compiling software is usually very straightforward.

    Quote Originally Posted by gradinaruvasile View Post
    PS First time i had to search all over the internet to paste these informations together. Maybe there is some how to somewhere but i didnt find it.
    Exactly! Also, a lot of the posts on here use acronyms and terminology with which they assume everyone will be familiar. When you are coming into this cold, from the outside, that ain't necessarily so! Hence my request for an "Idiots Guide"!

    Nonetheless, I've managed to extract enough information from here to tell me I need to be patient for longer. At this rate though, I'll have replaced the Acer with something more useful (ie using either Intel or NVidia graphics) before AMD get around to sorting out this mess!

    Again, thanks everyone for your input.

    --
    Pete

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •