LibreELEC-Generic.x86_64-8.2.2.img - Video playback of WMV3/VC-1 totally broken (on AMD)

  • I'll post a full and proper bugreport, if necessary, but this problem is so amazingly glaring that I can't imagine that will even be necessary.


    On AMD (x86/64) platforms... which is all I have access to at the moment... playback of WMV3/VC-1 files is totally hosed in the 8.2.2 release. I get just rapidly flashing, highly pixelated, and mostly green garbage on the screen. I've tried playing several different WMV files and the result is the same for all of them.


    I can't image that I'm the only person to have noticed this, or to be able to easily reproduce it.


    Could someone please confirm?

    • Official Post

    Two things:


    a) So far you are the only person to report it. So do some testing and step backwards to tell us the last working release.

    b) Test a current milhouse (Leia) release, because there are no plans for more 8.2 releases

  • Two things:


    a) So far you are the only person to report it. So do some testing and step backwards to tell us the last working release.

    b) Test a current milhouse (Leia) release, because there are no plans for more 8.2 releases

    OK, I will do both (a) and (b), but do you or anyone on the team happen to have any AMD hardware the you could just try playing a WMV3/VC-1 file on? I do believe that the problem will be evident if you just do that.


    Oh! And please explain to me where I can get this "current" release you have mentioned. I just downloaded that 8.2.2 Generic X86/64 file yesterday, and that did seem to be the most current available at that moment. I guess that you are suggesting that I look around for a "nightly" build, yes?

  • I think, this is what chewitt is suggesting.


    LibreELEC Testbuilds for x86_64 (Kodi 18.0)


    Latest build is Page 157


    from what I remember, these are just tar files, so you need a clean build, & add the tar file into the update folder & reboot

    Samsung RU7400 Onkyo HTX22HDX Nvidia Shield HD Homerun Duo (Living Room)

    Samsung UE40ES5500 X96 Max+, Fire TV 4K Stick (Bedroom)

    Synology DS920+ Plex Pass

    :)

  • Sorry for the delay. I've now had a chance to do some testing to try to determine how far back this self-evident bug goes. As of now, I have tested:


    8.2.2

    8.1.1

    8.0.1

    7.90.009

    7.0.3


    All of the above versions exhibit the same exact (and very glaring) bug, i.e. total garbage, flashing, mostly pixelated, and mostly green output to the screen during playback of VC-1/WMV video, at least on my trusty old AMD E-450 based HTPC, however...


    I just tried the exact same tests also on my AMD-based desktop system (containing an AMD A4-6300) and with the LE 7.0.3 release at least, the video playback of VC-1/WMV3 was just fine. So I'm guessing that the problem is limited to older-vintage AMD/ATI/Radeon GPUs.

    I confess that I don't know very much at all about video acceleration on AMD/ATI/Radeon GPUs, but I gather that it involves something called VDPAU, and thus, I guess that there is... and perhaps always has been, from the beginning of the LibreELEC project... some very serious breakage in the way that LE is using that interface, at least for older vintage AMD/ATI GPUs.


    Sigh. It's a pity, because this stuff did actually work, e.g. back when I was using OpenELEC 5.0.8. So somewhere along the line, breakage was introduced into the code. (This qualifies as a "regression", I think. It used to work, but now doesn't.)


    So, um, if I want to continue watching my old WMV and VC-1 files (e.g. my rip of the Doctor Zhivago BluRay) and if I also want keep up-to-date, you know, as LE evolves, do I have no choice now but to finally bite the bullet and buy myself a Chromebox?

  • It's probably worth a try to compile a build with downgraded xf86-video-ati package.

  • It's probably worth a try to compile a build with downgraded xf86-video-ati package.

    Thanks for the suggestion, but I think I'm going to take a pass on that.


    LE should support this hardware out-of-the-box. OE did, once upon a time. If LE just isn't going to do so, going forward, then it doesn't make sense for me to build my own custom version of LE every time there is a new bugfix release. If this HTPC just isn't going to be supported, then it makes more sense for me to just trash it and get something else which will actually be supported... like fer instance a Zotac Zbox BI325.


    It's a pity, because this is a nice and very functional box that does (mostly) everything I need, and it has been highly reliable for several years now. (I'm frankly surprised that the power switch on the thing hasn't gone bad. I've given it plenty of exercise, over the past several years. I guess I got lucky and got a well-built one. This is a Foxconn NT-A3700-0H0WBANA.)

    • Official Post

    Like finance investments "past performance is not a guarantee of future performance" and with GPU drivers we are ultimately dumb consumers of what the vendors publish. I'm far from being an expert on the history of things, but VDPAU is dead and newer AMD drivers use VAAPI (as does Intel) which is still evolving. It's worth Googling the driver mailing lists and vendor bug trackers for issue reports and responses, because ultimately that's where things need to be reported and resolved.

  • Like finance investments "past performance is not a guarantee of future performance" and with GPU drivers we are ultimately dumb consumers of what the vendors publish. I'm far from being an expert on the history of things, but VDPAU is dead and newer AMD drivers use VAAPI (as does Intel) which is still evolving. It's worth Googling the driver mailing lists and vendor bug trackers for issue reports and responses, because ultimately that's where things need to be reported and resolved.

    Well, I just mentioned VDPAU because I had seen the name before a few times in relation to AMD/ATI GPUs. In truth, I don't know for sure VDPAU has anything at all to do with this issue.


    Anyway, if VAAPI is the new/current way to get functionality out of AMD/ATI GPUs, then perhaps there is just simply a bug in the way LE is attempting to use VAAPI for older AMD/AMD GPUs (specifically with respect to VC-1/WMV3 decoding).


    As I said, this did (and does) work just fine when I revert back to OpenELEC 5.0.8. So there has just been some breakage, somewhere along the line.


    I wish that somebody on the LE team would at least take a quick look at the issue and see if there's something simple that could be tweeked to get it working again. But I guess that the motivation isn't really there.


    P.S. I'm just reading the Wikipedia pages relating to VAAPI, and it says that from 2009 onward, there was what I would term a VAAPI "shim" that provided a VAAPI compatible interface to AMD's proprietary fglrx Radeon driver. So if that existed as far back as 2009, I am guessing that OpenELEC 5.0.8 was/is probably using that successfully to drive the UVD2 portion of this AMD E-450 I've got. If so, then that begs the question: Why shouldn't that be working just as well today, with LibreELEC, as it was several years ago, with OpenELEC? The hardware hasn't changed, so it seems apparent that some software bitrot just crept in someplace.


    Did fglrx drop support for older AMD/ATI GPUs? I rather doubt it.


    This isn't adding up.

  • As I said, something isn't adding up here.


    I had a spare Sandisk Flair 32GB USB stick lying around so I downloaded and did a fresh install of Ubuntu 16.04.3 LTS onto that and then booted my AMD E-450 HTPC using that. I followed the directions on the Kodi web site to install Kodi, fresh, onto this system, but it appears that Kodi 17.6 was already pre-installed.


    I ran a couple of tests and sure enough, playback of VC-1/WMV3 videos works just fine when the latest Kodi is layered on top of a recent vintage Ubuntu. The complete log file for these tests is here.


    So, the obvious question is: What is broken in LibreELEC, relative to Ubuntu+Kodi? And shouldn't that get fixed?


    Do I have to resort to using full-blown Ubuntu+Kodi in order to just simply play WMV files? It seems so, at present. But I thought that this was exactly what LibreELEC (and OpenELEC before it) were intended to make unnecessay. No?


    Ubuntu: 16.04.3 LTS

    Kodi: 17.6 Git:20171114-a9a7a20

  • Did you try the latest LE9 test build as you were instructed? It includes a more recent version of xf86-video-ati (18.0.1 vs. 7.8.0) and newer versions of a whole bunch of components, any one of which might contribute to this bug in LE8.2.x. AMD hardware now supports VAAPI by default in LE9 builds.


    Testing with the current development version is your best option because as already stated there are no plans for further LE 8.2.x releases.

  • Did you try the latest LE9 test build as you were instructed? It includes a more recent version of xf86-video-ati (18.0.1 vs. 7.8.0) and newer versions of a whole bunch of components, any one of which might contribute to this bug in LE8.2.x. AMD hardware now supports VAAPI by default in LE9 builds.


    Testing with the current development version is your best option because as already stated there are no plans for further LE 8.2.x releases.


    Hey There. I just upgared to the lates libreelec on my HTPC, which is fairly old. (Asrocm e350m1) I1m getting constant stuttering now during video pleayback. Is there any way to switch bak to the old VDPAU rendering method?


  • Hey There. I just upgared to the lates libreelec on my HTPC, which is fairly old. (Asrocm e350m1) I1m getting constant stuttering now during video pleayback. Is there any way to switch bak to the old VDPAU rendering method?

    No there's no way to use VDPAU with AMD, it's no longer supported.


    If you're experiencing stutter issues with AMD and VAAPI then your best bet is to post your debug-enabled kodi.log in the LibreELEC x86_64 Kodi 19 test thread on the Kodi forum (as that's where those test builds are supported) and maybe a sample video file too.

  • Ummmm... I sold my old AMD-based HTPC right around Feb. 25, 2018. Now I own a different (Intel-based) one.


    It's great that you folks put in better AMD GPU support, but it is a bit late for that to do me personally any good. Nor am I any longer in a position to be able to test your new AMD fixes. Sorry.