XBMC Community Forum
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)



- slicemaster - 2009-02-24 04:40

tslayer Wrote:1) So it wouldn't destabilize the linuxport branch too much.
2) Very likely.

Thanks for the QUICK response. I figured that was the reason for question one but I was not absolute sure. I also figured it would have upstream consequences once the code is stabilized which at the rate the work is coming might even make it into the next “stable” release of XBMC that is due in a few months.

Slice

P.S. So once the code is taken back upstream and this fork discontinued, the functionality will be completely translucent to the end user right? For example if the software detects a compatible driver and video card it will simply use hardware decoding for supported media types with out the need for user intervention, correct?


- motd2k - 2009-02-24 04:51

slicemaster Wrote:Thanks for the QUICK response. I figured that was the reason for question one but I was not absolute sure. I also figured it would have upstream consequences once the code is stabilized which at the rate the work is coming might even make it into the next “stable” release of XBMC that is due in a few months.

Slice

P.S. So once the code is taken back upstream and this fork discontinued, the functionality will be completely translucent to the end user right? For example if the software detects a compatible driver and video card it will simply use hardware decoding for supported media types with out the need for user intervention, correct?

Correct


- BLKMGK - 2009-02-24 06:19

Question: folks are talking about filters and brightness controls etc. - where are these being accessed? Is this per movie or is there some central spot to access these across all videos? I'm interested in trying them out - the hardware filters and the brightness especially!

Thanks and I really appreciate the work on this!

P.S. Has DVD functionality been brought back in? Not had a chance to try it and last time it hard locked - doh!


- danillll - 2009-02-24 07:01

motd2k

I just finished fixing the "save filter" issue, you were going the right way by saving to the DB, however the code does not read the video settings from the DB anymore, the db settings table is never updated something is broken, not sure what or if it's just a deprecated feature, anyhow, all the settings are read/saved from/to guisettings.xml which is controlled in Settings.cpp

I extensively tested the fix and the filter settings are now working as designed and also made sure that the saved value, once XBMC rebooted, it gets set correctly by the dp_video_mixer, here is the diff to the latest rev of Settings.cpp

xbmc@XBMC:~/xbmc-vdpau/XBMC$ diff xbmc/Settings.cpp ../../../xbmc/Desktop/Settings.cpp
1026,1028d1025
< GetFloat(pElement, "vdpaunoise", g_stSettings.m_defaultVideoSettings.m_NoiseReduction, 0.0f, 0.0f, 1.0f);
< GetFloat(pElement, "vdpausharpness", g_stSettings.m_defaultVideoSettings.m_Sharpness, 0.0f, -1.0f, 1.0f);
< XMLUtils::GetBoolean(pElement, "vdpinversetelecine", g_stSettings.m_defaultVideoSettings.m_InverseTelecine);
1661,1663c1658
< XMLUtils::SetFloat(pNode, "vdpaunoise", g_stSettings.m_defaultVideoSettings.m_NoiseReduction);
< XMLUtils::SetFloat(pNode, "vdpausharpness", g_stSettings.m_defaultVideoSettings.m_Sharpness);
< XMLUtils::SetBoolean(pNode, "vdpinversetelecine", g_stSettings.m_defaultVideoSettings.m_InverseTelecine);


motd2k
not sure why html is adding a space, in the above ^^^^ for example m_InverseTelecine is becoming m_InverseTelec ine (note the space) when I save the comment, I will email you the file


- danillll - 2009-02-24 07:09

next on my to do list:
- disable unused filters when vdpau is being used, for example brightness, contrast
- add debug logs for "SetTelecine" to make sure the API call is called. I didn't notice any differences with telecine, but again, I need to hook it up to the big screen and not sure if a 60fps movies and 24fps tv are required to see any difference ( I don't have this hardware), anybody with 24fps tv can test this feature for us?
- add luma/chroma filters to replace the unused brightness/contrast
@motd2k I can't remember where, but I noticed in your code that you didn't enable the luma filter on purpose, is this true? shall I try it?


- pilluli - 2009-02-24 10:46

Hi,

Thanks danillll for giving it a try to enable the brightness/contrast in vdpau,

danillll Wrote:- add debug logs for "SetTelecine" to make sure the API call is called. I didn't notice any differences with telecine, but again, I need to hook it up to the big screen and not sure if a 60fps movies and 24fps tv are required to see any difference ( I don't have this hardware), anybody with 24fps tv can test this feature for us?

I recently got a 24p capable display so I can test the inverse telecine. From one of your comments earlier I understand that this option works when changing 30fps material to 24fps. I'll have to search for a proper 30fps sample to test this though...

BTW, about the 16-235 range in bug 5019. I'm willing to give it a try and try to implement an option to select "full" or "limited" range (I think the PS3 does that but not sure as I haven't got any). d4rk comments in the bug report hints that xbmc viveo shaders already have the option to render in that range. So my questions to start looking into this are. Do motd2k vdpau changes create a new shader? Will it be possible to implement this within xbmc or must be through nvidia vdpau? What do you think?

regards,


- pilluli - 2009-02-24 10:50

Hi BLKMGK,

BLKMGK Wrote:Question: folks are talking about filters and brightness controls etc. - where are these being accessed? Is this per movie or is there some central spot to access these across all videos? I'm interested in trying them out - the hardware filters and the brightness especially!

When a movie is playing, go to the movie menu and in the video settings you'll see the brightness/contrast controls. Also if vdpau is being used you'll see the vdpau ones.

Quote:P.S. Has DVD functionality been brought back in? Not had a chance to try it and last time it hard locked - doh!

As far as I know I don't think so. SSA subtitles (which I think are related) also do not work yet.

regards,


- motd2k - 2009-02-24 14:05

DVD functionality has been 'back' for several days, as have subtitles.


- sensei73 - 2009-02-24 14:11

2 days ago, I decided to give a try to vpau xbmc and it worked really well so I decided to upgrade to the latest build with last Nvidia driver, but now when I try to load a video XBMC crash!!

Quote:13:08:16 T:2821708688 M:1503064064 DEBUG: Open - av_find_stream_info finished
13:08:16 T:2821708688 M:1503064064 INFO: ffmpeg: Input #0, matroska, from '/stockage/HD3/Films HD/Awake.mkv':
13:08:16 T:2821708688 M:1503064064 INFO: ffmpeg: Duration: 01:24:05.04, start: 0.000000, bitrate: N/A
13:08:16 T:2821708688 M:1503064064 INFO: ffmpeg: Stream #0.0(eng): Video: h264, yuv420p, 1920x816, PAR 1:1 DAR 40:17, 23.98 tb®
13:08:16 T:2821708688 M:1503064064 INFO: ffmpeg: Stream #0.1(eng): Audio: dca, 48000 Hz, 5.1, s16
13:08:16 T:2821708688 M:1505558528 DEBUG: SeekTime - seek ended up on time 628461
13:08:16 T:2821708688 M:1505558528 DEBUG: Process - starting demuxer from: 627.252030
13:08:16 T:2821708688 M:1505558528 NOTICE: Opening video stream: 0 source: 256
13:08:16 T:2821708688 M:1505558528 NOTICE: Creating video codec with codec id: 28
13:08:16 T:2821708688 M:1505558528 NOTICE: Constructing CDVDVideoCodecFFmpeg
13:08:16 T:2821708688 M:1505558528 DEBUG: FactoryCodec - Video: FFmpeg - Opening
13:08:16 T:2821708688 M:1505558528 NOTICE: CDVDVideoCodecFFmpeg::Open
13:08:16 T:2821708688 M:1505558528 DEBUG: SECTION:LoadDLL(special://xbmc/system/players/dvdplayer/swscale-0.6.1-i486-linux.so)
13:08:16 T:2821708688 M:1505558528 DEBUG: Loading: /usr/share/xbmc/system/players/dvdplayer/swscale-0.6.1-i486-linux.so

Xbmc Build 18053 and Nvidia driver 180.29

Back to revision 1800 everything is ok


- rodercot - 2009-02-24 15:30

sensei73 Wrote:2 days ago, I decided to give a try to vpau xbmc and it worked really well so I decided to upgrade to the latest build with last Nvidia driver, but now when I try to load a video XBMC crash!!



Xbmc Build 18053 and Nvidia driver 180.29

Back to revision 1800 everything is ok

I was trying 18044 on an m2n-sli with a 9400gt same issues. I get a crash to desktop right away on any .mkv or .ts files with segment fault. I cannot up the vid mem in this bios for some reason I have looked everywhere, is there a way to force more vidmem within the system or the nvidia-settings. It is a 512Mb card.

I just tried and svn up - cannot find temp directory
deleted xbmc-vdpau directory - svnc co - cannot find temp directory

$ df - / = 29% usage.

Dave


- alanwww1 - 2009-02-24 16:26

Has anyone checked this new branch ? xbmc-smoothvideo branch:

http://xbmc.svn.sourceforge.net/viewvc/xbmc/branches/xbmc-smoothvideo/

It makes clock syncronizations of audo to the video card clock for less juddering.

It could be really interesting to megre it with the VDPAU branch. I think it could be possible, beacuse the clock syncronization or resampling is only inlfuencing the audio playback. So a VDPAU decoded picture with a well syncronized audio would be a real dream for a media center.

Thank team xbmc for letting this happen Big Grin


- kross - 2009-02-24 21:38

rodercot Wrote:I get a crash to desktop right away on any .mkv or .ts files with segment fault.

Same here with r18044. If I set the video renderer to anything other than VDPAU or Auto Detect, then it works fine, of course without hardware decoding.


- tslayer - 2009-02-24 21:42

Do you guys not even check the timeline to see if that issue has been fixed? Always build on latest before reporting something...

r18062 : merged with linuxport 18053. fixed segfault upon launching video


- rodercot - 2009-02-24 21:52

tslayer Wrote:Do you guys not even check the timeline to see if that issue has been fixed? Always build on latest before reporting something...

r18062 : merged with linuxport 18053. fixed segfault upon launching video


That must have just happened - I am on r18061 - DOH! my bad. The Devs are just too darn Quick. Big Grin

Dave


Problem with HD-PVR h264 recordings - analogue - 2009-02-24 21:54

So HD-PVR generated h.264 recordings seem to play worse with the VDPAU renderer than with the non-VDPAU renderer. CPU usage rarely goes above 20% on both cores but frames are getting dropped left and right. I've tried this with a number of different bitrate HDPVR recordings. Can anyone confirm before I file a trac ticket? Sample recordings can be downloaded here: http://www.m i n i n o v a.org/search/?search=%22hd-pvr%22&cat=0 (make sure you take the spaces out of the URL)

Context: Hardy + NVIDIA 180.29 + 8400GS 512MB + XBMC VDPAU SVN 17938 (i know its not trunk, but I got hit by latest segfault issue and rolled back)