Render method?
#1
Hi, I have searched exhaustively but haven't been able to find an answer.

I'm using a GL build (22516). What is the difference between basic and advanced shaders and software rendering?

Can most users just leave this at auto? And what are the theoretical pros and cons of each one?

I seem to get smoothest HD playback if I select basic shaders, but am I taking a quality hit by doing so?

If anyone could be kind enough to break this down for me I'd be so grateful!

Thanks so much! Big Grin


Also have the same curiosity about the upscaling options (bilinear vs bicubic) if anyone has the patience to explain!
Reply
#2
Basic and advanced shaders use the shaders on your graphics hardware to offload video rendering. This is for most CPUs the only way to decode 1080p smoothely. More powerfil advanced shaders however are only available on more recent gpus. Software rendering does what it says: it does all in software, aka on your CPU. If you got two cores at approx 3ghz that might work for 1080p videos. As for the scalers you could easily read that up on wikipedia: http://en.wikipedia.org/wiki/Bicubic_interpolation and http://en.wikipedia.org/wiki/Bilinear_interpolation

Cheers
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#3
I'd like to add that this is different from hardware accelerated decoding. Those settings only have to do with how the video is rendered to the screen, and not how the video is decoded. That is still done all in software (except for in Linux with the VDAPU functionality).

I believe that the shaders are used to transform pixel information from the video to the screen, rather than doing the transformations in software. Each pixel video is treated as a polygon or something along those lines.
Windows 7 x64 Home Premium
Gigabyte MA78GM-U2SH Mainboard
ATI HD3200 Onboard
AMD 7750BE Dual-Core 4.00GB RAM
ATI HD3200 HDMI Sound
HTPC HMDI -> ONKYO TX-SR605 -> Panasonic TH-46PZ85U Plasma
Reply
#4
Wisely spoken young jedi! Big Grin ...and thanks for the clearup. Maybe a dev could jump in and finally englighten our souls.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#5
Thanks a lot for the replies guys Smile

So basically, unless I have a particularly nice new GPU (which I don't - I have an integrated ATI HD3200) basic shaders is the way forward, and probably what would be picked by auto method anyway?

Thanks Big Grin


as for the upscalers is there any generally received wisdom on which to go for in XBMC depending on CPU, GPU etc?
Reply
#6
The HD3200 chip from AVI can do the Advanced Shaders no sweat!

Its what I have in my setup.

All you need is a certain level of shader model support (I don't know what level is the minimum requirement). The HD3200 has it.
Windows 7 x64 Home Premium
Gigabyte MA78GM-U2SH Mainboard
ATI HD3200 Onboard
AMD 7750BE Dual-Core 4.00GB RAM
ATI HD3200 HDMI Sound
HTPC HMDI -> ONKYO TX-SR605 -> Panasonic TH-46PZ85U Plasma
Reply
#7
Oh cool...good to know! And is there a discernable difference in a) quality and b) resources use between basic and advanced?

Of course will test for myself, but would love to hear what the received wisdom is on this Smile

I ask because my HTPC laptop is very prone to overheating!
Reply
#8
The HD3200 is passively cooled on almost all motherboards having it (since its a pretty low power chip). The heat generated by it shouldn't that significantly more when selecting the rendering method. Most of your heat is coming from the CPU as its doing all the decoding.

Advanced shaders are probably using a more recent shader model or more advanced features of the HLSL/GLSL languages. But a dev is gonna have to confirm what I said lol.
Windows 7 x64 Home Premium
Gigabyte MA78GM-U2SH Mainboard
ATI HD3200 Onboard
AMD 7750BE Dual-Core 4.00GB RAM
ATI HD3200 HDMI Sound
HTPC HMDI -> ONKYO TX-SR605 -> Panasonic TH-46PZ85U Plasma
Reply
#9
I thought a polygon was a stolen parot.

Little wonder this stuff is confusing me.
Reply
#10
Does the advanced shader renderer actually work on DirectX builds seeing as it uses GLSL. It does give an image when selected. (though maybe it's falling back to software or something?)
Reply
#11
Well there are 2 different shader languages: GLSL and HLSL. I would think that DX builds the microsoft HLSL language while GL builds use GLSL. Though if any dev wants to provide a definitive answer, please do Big Grin.
Windows 7 x64 Home Premium
Gigabyte MA78GM-U2SH Mainboard
ATI HD3200 Onboard
AMD 7750BE Dual-Core 4.00GB RAM
ATI HD3200 HDMI Sound
HTPC HMDI -> ONKYO TX-SR605 -> Panasonic TH-46PZ85U Plasma
Reply

Logout Mark Read Team Forum Stats Members Help
Render method?0