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)
- paul - 2010-01-19 01:25
jmarshall Wrote:Secondly, you need your fanart converted to .dds. If you're on windows, you can use the batch file and script in the attached .zip file. Simply place the MakeDDS.exe and Convert.bat script in your fanart folders (UserData/Thumbnails/Video/Fanart and UserData/Thumbnails/Music/Fanart) and run the convert.bat batch file. with convert.bat *.tbn It'll take a few seconds and 1-2MB per image. NOTE: You'll need the SDL libraries (SDL.dll, SDL_image.dll) in your path - you can place them in windows/system32 or next to MakeDDS. Grab them from the SDL website if you don't have them.
Ok I give in where can i Grab a copy of MakeDDS.exe and Convert.bat script,
as i could not find any attached zip file??
- IceNine - 2010-01-19 22:57
jmarshall Wrote:Please read the thread.
Very well, from all of my digging around the net and the forums here is what I have learned:
- The DXT compression system for fanart and other large images was first suggested here about 4 months ago. There has been some controversy in this thread whether this was even necessary or desirable, as compression to DDS format compared to JPG could potentially result in lower quality images.
- DXT compression and DDS formats seem to already be supported on the Xbox version of XBMC and in all versions for skin textures.
- It seems that this type of compression support has been implemented at least a little bit, although I can't tell if it is only on the Windows-specific versions of XBMC.
- On your initial post, there was an attached file with a Windows-based DDS compression tool and batch script that is no longer there. The file can still be found(ish) here i believe here, in the svn trunk tools folder.
- Support for DDS images for fanart can be enabled through an advancedsettings.xml setting, at least as of October of last year. There isn't much more information in Trac since around that time.
- This kind of compression offers a potentially significant performance increase for people running XBMC on low cpu-power systems (such as myself with an ASRock 330 Pro). As these kind of systems seem to be gaining popularity for home theater systems, I would think this kind of development would be worthwhile.
- I can't tell if this kind of compression is easier to implement on Windows over Linux and I am not a developer myself so I am working on a very limited knowledge of how this would be built. It does seem that nVidia offers tools that allow for working with this kind of file on Windows and Linux for those people running CUDA-enabled nVidia GPUs (ie. ION systems).
- There has been one post from someone running an ASRock 330 that used this and reported a significant speed increase. Although there are no other details in the post, I am assuming Linux is being run on that system, so it gives me hope I will be able to figure out how to set it up on my own box, which is why I am pestering you guys so much for more information.
- It's been said that it will be a long time before this type of system is implemented: so be it. As I've said I am not a developer so my contribution to the project pretty much stops at feedback. By all means, take your time. I understand the developers don't get paid and I have loved the XBMC project since it ended up on my Xbox many years ago. I won't stop using it if this gets dropped altogether, or for any other reason. I just recently got my ION system to replace the Xbox (gotta keep up with h.264) and have been searching high and low to get it to run as smoothly as possible while still keeping the look that I like (ie. Aeon. I know it's a crusher on cpu and such, hence the optimization).
Any more information that you provide is always appreciated. This just sounds like something that would work for me personally, so I am selfishly pursuing it (although I suppose the info could be useful to my ION/Atom brothers).
- bleze - 2010-01-19 23:06
Does source code exist which can convert a JPEG to DSS without the need for SDL? I'd like to implement something running on a Windows Home Server (Windows 2003 Server).
- arco - 2010-01-19 23:20
^^ I'm the one who tested this on my ASRock 330. I have XBMC Live 9.11 installed. I'm using the nVidia texture tools to convert the images. Can be done it both Windows and Linux, but I do it in Windows for now and use sftp to transfer the images back and forth. It's a bit work as you need to find the new images (I go by date on that), and the .tbn files needs to be renamed to .jpg before converting. Then I just run a simple bat file that does the conversion, as the convert program is not able to convert multiple images at once. If I had the knowledge, I would have made a script in Linux to automate this process, as that would be the best. As for the loading speed, it's a whole different world compared to loading jpg images. You can browse through movies/tv-shows as fast as you can click next/previous on the remote, and the fanart image is on the screen instantly. It's sooo much smoother. Image quality looks perfectly fine to me, can't say I notice any difference.
- IceNine - 2010-01-20 01:07
I'm glad you are reading this thread, arco! It is great to be able to get some info from someone who has done it firsthand. I'm assuming you are doing the DDS conversion just for fanart, not for other thumbnails? Does anyone know if it would work for movie/tv posters as well? Are there any other settings you changed on your system other than adding the <useddsfanart> setting to your advancedsettings.xml file? Also it sounds as if you are leaving the original .tbn files on the XBMC machine along with the new .dds files. Is this the case, and if so why not just delete the .tbn files and have only the .dds files on the XBMC machine?
- IceNine - 2010-01-20 01:58
bleze Wrote:Does source code exist which can convert a JPEG to DSS without the need for SDL? I'd like to implement something running on a Windows Home Server (Windows 2003 Server).
The Windows download of the nVidia tools does come with source code and includes to incorporate the libraries in your own software, as well as command line binaries of the tools for scripting, so hopefully that might help you.
- jmarshall - 2010-01-20 02:36
The sourcecode that we use in the texture packer is in SVN as well - see MakeDDS. It uses squishlib which (in my experience) gives very slightly better quality than the nvidia tools. I suspect you'd have to measure the difference rather than see it though.
- arco - 2010-01-20 02:36
IceNine Wrote:I'm glad you are reading this thread, arco! It is great to be able to get some info from someone who has done it firsthand. I'm assuming you are doing the DDS conversion just for fanart, not for other thumbnails? Does anyone know if it would work for movie/tv posters as well? Are there any other settings you changed on your system other than adding the <useddsfanart> setting to your advancedsettings.xml file? Also it sounds as if you are leaving the original .tbn files on the XBMC machine along with the new .dds files. Is this the case, and if so why not just delete the .tbn files and have only the .dds files on the XBMC machine?
I'm only using it for fanart, and I think XBMC only supports it for fanart atm. I don't think dds is needed for anything but fanart anyway, since posters and such loads pretty quickly at my end.
Only change I've done to the system is add the <useddsfanart> to advancedsettings.xml. It will then load the dds file instead of the tbn file.
And I have both the tbn and dds files stored in the fanart folder. I'm not that worry about it using disk space, as I have the media files on another computer and only uses the 330's hard drive for the XBMC system itself. Also it's easier if I want to switch back to using the normal method, and not having to rescrape everything.
- arco - 2010-01-20 20:08
I made a couple of videos showing the difference. Used my mobile to record, so quality isn't that great, but should be good enough for you to see.
- Smenus - 2010-01-21 02:25
I sometimes have 'pop-in' type effects on wall views, such as the one in Xperience.
I was wondering if using .dds instead of the .tbn files would help, or would even work?
All of my movies have a movie.tbn file, which in most cases is a 1000x1500px JPG, although I expect XBMC caches at a lower res than that.