Compressed textures for FanArt - testing here with XBMC 2009-10-05 (r23431) or newer - 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)
+--- Thread: Compressed textures for FanArt - testing here with XBMC 2009-10-05 (r23431) or newer (/showthread.php?tid=59115)
- galvanash - 2011-03-23 12:28
Marcus263 Wrote:I'm in the middle of writing up a comprehensive guide for optimising the performance of Apple TV; so far I've taken the Alaska Revisited skin stripped it down to the core, repacked the textures for speed, written up some startup scripts to disable unnecessary services (Printer, Airtunes, Network Time, PBS etc) and given XBMC a 'nice' high priority, optimised all image and XML files to take up a small footprint and it seems to be working. We only have 250megs of RAM to work with and a bad processor but so far so good.
1. Optimizing image size (i.e. size in bytes) by tweaking the jpeg/png compression settings is not going to have much if any impact on performance on an Apple TV. It will save disk space of course, but it won't make the images load much faster. The time delta between reading a 100kb file and a 50kb file is going to be virtually zero - the disk i/o (which is actually pretty fast since it is flash based) is completely eclipsed by the rendering overhead. The bottleneck is in the GPU, and everything ends up being a bitmap eventually so the byte size of compressed images is mostly irrelevant.
No matter how much you compress the on disk version of an image, it's size once it reaches the framebuffer is width x height x bitsPerPixel (with the exception of native GPU compression formats - see 2). If you want to increase performance, you should be reducing the resolution of the images, not optimizing the compression.
2. Apple TV's using OpenGL ES and do not support DXT textures (which is what xbmc produces currently when the useddsfanart option is set). As things are now, useddsfanart won't work on an Apple TV. Support for PVR texture compression (which is similar to DXT and serves roughly the same purpose on Apple devices) may be added in the future, but as of right now it is not supported.
Anway, to answer your specific question (caveats mentioned above aside): If you enable dds xbmc will compress the version of the image it already has in it's cache - it will not re-download the image.
- davilla - 2011-04-26 19:33
galvanash Wrote:2. Apple TV's using OpenGL ES and do not support DXT textures (which is what xbmc produces currently when the useddsfanart option is set). As things are now, useddsfanart won't work on an Apple TV. Support for PVR texture compression (which is similar to DXT and serves roughly the same purpose on Apple devices) may be added in the future, but as of right now it is not supported.
Actually, on OpenGLES devices, DDS compression does benefit. XBMC will still compress them and while CPU is used to decompress, this seems faster than using png/jpg decompression.
I'm looking into PVR compression but it does have more restrictions than DDS, w must equal h and both must be a power-of-two. PVR can also suffer from boundary edge ringing. The one disadvantage of PVR compression is there is no way to compress on the fly on the native ARM device.
- jackmeehan - 2011-05-29 15:29
This may have been covered before, but is there a way to export the DDS images as well as TBN when exporting Libraries?
- kiboy6 - 2011-06-07 06:50
I have the advanced setting working perfectly for all my fanart - way snappier than it was before.
Way back in this thread I read
Quote:"It's already done by default for skins, through the .xbt file."
Is this definitely the case for all skins? With my puny atom processor, changing between screens with different wallpapers can be quite sluggish. I would love to be sure that as much work as possible is being offloaded to the ION GPU.
There are no .dds files in my skin folder. Are there any files I could manually convert to .dds to get snappier performance? (running BackRow)
- Paraffin - 2011-06-08 12:50
I am planning on following this guide
After the initial conversion do I need to schedule the conversion regularly or will XBMC handle this
- kiboy6 - 2011-06-08 15:10
I followed the same guide.
After conversion, XBMC will handle it as long as you have "useddsfanart" enabled in advance settings
Not sure if that will do all skin background images as well though...waiting for an answer on that from my post above you ...
- vdrfan - 2011-06-08 16:47
There's no need to manually convert it. Once the useddsfanart option is set to true via advancedsettings.xml, it will be handled automagically while browsing/caching the library
- kiboy6 - 2011-07-18 11:46
Is there any way to set a particular folder to be excluded from the "useddsfanart" rule?
Ronies's excellent Last.fm artist slideshow addon places the cached slideshow images in a folder named "ArtistSlideshow" within the userdata/thumbnails folder.
There's really no need for the dds images to be created here. Most of the images aren't very big anyway, and image loading time isn't an issue within the slideshow.
Therefore I would rather spare the CPU processing effort to make the .dds files, and also save a lot of extra diskspace (this addon rapidly caches 1000s of images).
Any advanced setting possible now / in the future to exclude this folder?
Thanks very much...
- vdrfan - 2011-07-18 12:46
Ideally 'userdata/thumbnails' is ONLY touched from core. Add-ons usually store their data in the addon_data folder. Anyway, i think you should open a new thread for this _special_ issue.
- lucifer1306217 - 2011-07-26 20:26
I was wondering if someone would be kind enough to write a batch file (for WINDOWS) to convert all the .tbn files in the fanart directory to dds. nvcompress or makedds will work since I have both executables.
Appreciate any help.