XBMC for Linux VDPAU - NVIDIA GPU video decoding support (now in the mainline SVN) - Printable Version
+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Help and Support (/forumdisplay.php?fid=33)
+--- Forum: XBMC General Help and Support (/forumdisplay.php?fid=111)
+---- Forum: Linux and Live support (/forumdisplay.php?fid=52)
+---- Thread: XBMC for Linux VDPAU - NVIDIA GPU video decoding support (now in the mainline SVN) (/showthread.php?tid=45525)
- maksimenko - 2009-04-18 01:12
Following up on my previous post:
maksimenko Wrote:b) Another thing that i've noticed is that when i set the VDPAU_TRACE to 1 or 2, and VDPAU_TRACE_FILE=vdpau.log and run xbmc (with an unmodified vdpau.[cpp|h] or with my modified one) the log contains the record for all the vdp_*_create calls, but not even one vdp_*_destroy call... tracing mplayer, it records both vdp_*_create and vdp_*_destroy calls... (I've tried with both 180.44 and 185.19 nvidia driver versions with the same results)... So, i dont know if vdpau is freeing its resources sucessfully or not...
Further research show that nvidia vdpau trace shows the vdp_*_destroy functions right before another vid is going to play, or on xbmc exit... I guess that's how nvidia handles the vdp_*_destroy calls, or at least trace it...
For the other problem that I had (playing 1080p vids on 1080p output surfaces and the not enough resources error), even if I changed the NUM_OUTPUT_SURFACES just to 2 it would occasionally happen, so i digged a little bit more and found that if the vdp_video_mixer_create is called without the deinterlace features for videos not interlaced (as most of my .mkv's) it would then have resources for the creation of the required video_surfaces...
motd2k, I've uploaded a patch in http://pastebin.com/m21b98e20. If you could take a look at it and commit whatever you think is relevant I'd really appreciate it. Beside the handling of CheckFeatures (just adding the deinterlacing to the video mixer if its enabled and the video is interlaced), the handling of the output surfaces (keep a var with the total of output surfaces that were created without problems), the handling of FFGetBuffer (dont add a render struct to the m_videoSurfaces vector if the vdp_video_surface_create didnt return a VDP_STATUS_OK, so there is not an invalid handle in the render pool), there are some cosmetic changes...
- tslayer - 2009-04-18 01:14
Great work, but you may be better off creating a trac ticket and attaching the patch there.
Thanks a lot!
- maksimenko - 2009-04-18 06:14
tslayer Wrote:Great work, but you may be better off creating a trac ticket and attaching the patch there.
Done =) http://xbmc.org/ticket/6391
Hope you guys find it helpful.
I'd be willing to help polishing the patch or adding/removing things so it can get accepted.
- Rand Al Thor - 2009-04-18 22:51
Rand Al Thor Wrote:I am still getting "Vdpau Failed" errors. I even installed the 185. drivers from an overlay.
Got it working. For anyone else who might be having trouble with gentoo, I had to install the overlay first, then use the sh package from the nvidia website with the same version number. Strange...but hey it's working! Thanks for the awesome software.
- boba23 - 2009-04-19 03:42
as a first time vdpau user, just wanted to know what nvidia driver version do I need as a minimum to get vdpau support? I am right now running the default Ubuntu 8.10 driver which is 180.11. My card is a 8500gt which should support VDPAU.
I just did a configure with svn version 19533 with --enable-vdpau and get this at the end of configure:
Is VDPAU=No because the driver doesn't support it? Or what am I missing?
Anything else I need to take care of to enable vdpau support?
- motd2k - 2009-04-19 04:11
I imagine you need the nvidia-dev package (not sure what its called on Ubuntu's repo)... however, just download and install NVIDIA 185.19 from the link on page 1, 180.11 is far too old.
- boba23 - 2009-04-19 16:57
Thanks for your answers guys, the problem is, there are several dev packages in the ubuntu 8.10 reps. But they all correspond to the "regular" driver versions, nothing there for 185.19. I could install e.g. nvidia-glx-180-dev
But I don't know if that wouldn't conflict with the 185.19 driver I have now installed from the nvidia website ....
- Neil - 2009-04-19 17:51
Can I take advantage of VDPAU with old Mac hardware? I have an old Quicksilver G4 PowerMac with AGP graphics. Are there cheap video cards compatible with the Mac (running some kind of PPC Linux) and VDPAU? Thanks.
- boba23 - 2009-04-20 00:16
Ok, got vpau running now, and what can I say ... you guys really rock :-) Finally my 8500gt is of some use :-) 1080p playback with 3-4% cpu usage :-)
I had to reinstall 185.19 using envyng. That did the trick for me finally.
- boba23 - 2009-04-20 10:50
Hey there again
I am thinking about my hardware setup for my HTPC. The passively cooled 8500gt seems to get very hot, which increases overall sys temp. So I am thinking about maybe getting a new board with GeForce 9300 or 9400 onboard VGA. Those chipsets should be supported by Nvidia regarding VDPAU, right? Anyone here running one of those onboard chipsets that can tell if they are any good and sufficient for XBMC + VDPAU?
Otherwise I might consider getting a better cooler for my 8500gt, maybe an Arctic Cooling S1 Rev.2
- Haggy - 2009-04-20 10:53
Switching to a 9xxx IGP means a switch for at least CPU as well, as they only exist for Intel CPUs. Regarding that, it's not worth it... if you have enough space, get that Arctic cooler, but i wouldn't mind if temp is below 70-80 °C for the GPU or ~35° C sys
- boba23 - 2009-04-20 11:20
Sorry, my sig is outdated, I am running A Intel E8400 on a Gigabyte GA-73PVM-S2H. Case is a Antec Fusion Black 430. Scythe Ninja Mini (active) is cooling the E8400, I got one SilenX 120mm Fan active on the 2 side fan slots of the Fusion.
Without additional Fan the 8500gt gets 85-88 Deg Celsius hot. Nvidia Control Panel though says, that throtteling temp begins at 125 Deg Celsius, so I should be safe I guess. But I still don't like it. I don't like heatsinks that you can't touch without burning your fingers, and that's definately what happens when you touch that 8500gt heatsink, trust me :-)
I guess I'll check if I can put in the Arctic Cooling Heatsink.
- Haggy - 2009-04-20 11:25
The new mobo _might_ safe you some degrees and some bucks on the power bill as well - but the costs for the new mobo won't charge off the next years
i'd stick with the 8500gt if you're pleased with it. also who told you to touch the heatsink? i don't give a sh*t as longs as it works and makes no noise.
- SirBC - 2009-04-20 15:49
boba23 Wrote:Sorry, my sig is outdated, I am running A Intel E8400 on a Gigabyte GA-73PVM-S2H. Case is a Antec Fusion Black 430. Scythe Ninja Mini (active) is cooling the E8400, I got one SilenX 120mm Fan active on the 2 side fan slots of the Fusion.
You might just want to put a Scythe mini kaze on your heat sync. Here is a pic (not mine) of it on a a Gigabyte board. It dropped the temps on my IGP by about 15-20 C, not bad for a $3 fan.
- boba23 - 2009-04-20 23:42
Back to my VDPAU adventures ... well it doesn't seem as good as my first 2-3 tests seemed to show.
8 out of 10 1080p movies (h264, blueray rips) don't work or are rendered totally fucked up by VDPAU.
How are 1080p h264 movies playing for you guys? actually the only HD content that seems to play reliably for me using VDPAU is 720p h264.
Gotta admit that I don't have very much HD content to test right now.