Linux Ubuntu 15.04 + RS880 with OSDriver = no GL_NV_vdpau_interop
#31
Here's the Debug Log. I started Kodi, turned on debug logging, played 1 h.264 video file, checked that the codecinfo said "ff-h264-vdpau" and then stopped the video and closed Kodi.

http://www.xbmclogs.com/pmy1on4ho
Reply
#32
From the log you see that it is basically unusable - you are 200 ms off after 2 seconds playback :-(

But still I cannot explain why that code works at all for you. I think you are lucky and have a special card that in deed "could do" GL Interop ...

I am just verifying with the AMD people ...
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#33
Can you please post an unscaled screenshot? By using "print" in kodi and uploading it?
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#34
The 200ms could be unrelated, though I have no idea where it comes from. From an earlier thread about using OSS Radeon in Kodi (the link is in my earlier post), I found that it was recommended that a 175ms latency should be added to advancedsettings.xml when using the OSS Radeon driver. You can see it in the debug log as well.

I've created a screenshot with Kodi's built-in function. I assumed you wanted a screenshot of the video with the codec information showing. You can find it here:
http://www.mediafire.com/view/vo3i4418p6..._VDPAU.png
Reply
#35
Can you play this: https://dl.dropboxusercontent.com/u/5572...lannad.mkv

and make another screenshot (the OSD not interesting), we "think" that we should see corruption, cause your GPU cannot do this field based interop - which is the reason the extenions is disabled for you.

Make two or three screenshots, please. If you compare with VDPAU disabled - do you see a difference, e.g. "half of the content" now there which was missing before? :-)
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#36
And here is another sample that would "need" postprocessing, e.g. deinterlacing: http://solidrun.maltegrosse.de/~fritsch/...samples.ts

Does not work right, if you choose: TEMPORAL method?
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#37
Disregard the above post. As long as you use the Mixer - everything is fine.

If you disable VDPAU Mixer in settings - it should do harm.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#38
I've made the screenshots. For the clannad sample, I made one with vdpau, one without vdpau and one with vdpau but without the mixer (prefer vdpau mixer disabled). For the transformers sample, I just created a vdpau screenshot to show that it works. You can find them here:
http://www.mediafire.com/view/vo3i4418p6..._VDPAU.png

I've kept the codec information on them, so it's easier to see which is which. I've also got some additional screenshots without the codec information on it, in case you wanted to see the quality without the OSD. You don't really see any indication as to which one was using a specific settings, since they all just show the video correctly. I kept the screenshots in png format so there should be no reduction in quality there.
http://www.mediafire.com/view/vo3i4418p6..._VDPAU.png
Reply
#39
Thx very much. Nice.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#40
I'm not entirely sure what the problem is, though. Of course, I'm happy that it's working for me and I'm happy to help figure out why. But from what I understood, this was just a problem of Mesa not being compiled with support for GL_NV_vdpau_interop. So if you enable that extension using the official way that Mesa provides to enable/disable an extension during runtime, then it shouldn't be strange that it works, right?

I'm also not sure how my GPU could support or not support this extension, since it's an OpenGL extension that should allow stuff decoded with VDPAU to transfer to an OpenGL display/screen/system (something using OpenGL, not sure what the correct term is but I'm referring to Kodi here). So that shouldn't have anything to do with the hardware itself, but just with the driver.

If you need to know more about the hardware, I can provide some more info. I am running the IGP from this chipset:
https://en.wikipedia.org/wiki/AMD_800_ch...ries#890GX
It's the onboard chipset for the ASRock 890GM Pro3 R2.0 motherboard.
Reply
#41
Your GPU does not fully support this extension. It can only use the "one direction" from vdpau to output. But as we check for this extension on startup (cause we don't have a single alternative) - it does not work for you. Until today I even did not know that those cards do it "partially" in the one direction ...

We don't need that info - as it's an upstream mesa / vdpau / UVD API problem - we use the interop extension and therefore ask the driver if it's available - if the driver says no - we don't use it.

Edit: Please file a bug on bugs.freedesktop.org - this needs to be discussed with the radeon driver authors, cause I see no "clean" userspace possibility to check this out. Using a "non existing" extension is a crude hack nothing else.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#42
And for now - you can happily use the workaround to fake the extension :-)
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#43
So my GPU can do one direction, vdpau to output. Does that mean the other direction would be "OpenGL stuff sent to VDPAU"?

From the extension spec (https://www.opengl.org/registry/specs/NV...nterop.txt) it seems like this is the part that my GPU supports:
Code:
This allows the GL to process and display the content of video streams decoded using VDPAU.
and this the part that's still missing:
Code:
Alternatively, the GL may modify VDPAU surfaces in-place, and VDPAU may then process and/or display those surfaces itself.
Is this correct? (just for my own clarification)

I'd also be glad to file a bug on this on the radeon driver, but I'm not exactly sure what the bug is. Is it that the hardware only partially supports the extension or the driver only partially supports the extension? Or that there needs to be a way to find out if this extension is partially, but not entirely, supported from userspace?

I do appreciate the additional comment that I can keep using the workaround. I was starting to get nervous about that Tongue
Reply
#44
Yeah - it never was our intention to break support for old radeon cards ... though, we need to check for extension before we use them ... btw. please open this bugreport ... it is important. And we need to know the details about this workaround.
First decide what functions / features you expect from a system. Then decide for the hardware. Don't waste your money on crap.
Reply
#45
I reported the bug here:
https://bugs.freedesktop.org/show_bug.cgi?id=92220

I linked back to this thread, so hopefully it'll be of use to them.
Reply

Logout Mark Read Team Forum Stats Members Help
Ubuntu 15.04 + RS880 with OSDriver = no GL_NV_vdpau_interop0