I'm just fed up with this wallpaper issue in Manila.
When I got my Touch HD I figured someone will figure out why exactly is the 800x400 screen reducing wallpaper image quality to some low-res sh*t.
But, it's been months now, and no one seems to be working on this, so what the heck - I've decided to post it here, in hope that someone will actually try to do something about it.
What really disappointed me was the fact that even the latest Manila 3 from Topaz and Rhodium still has the exact same issue. So, it seems obvious to me that guys from HTC have no intention of fixing this. Why? I don't know.
But I do know it's frustrating to have all those fancy graphics, all that big, high-res screen, and then be forced to stare at THAT all day long.
Since I've seen so many great things being done to improve Manila, such huge changes to the whole system, I reckon there must be a way to improve this as well.
p.s. If no one cares, just take this as a bunch of rambling from a visual kind of guy
Oh, and just to share my info so far:
- the wallpaper picture format has no impact (I have tried them all - jpg, png, gif, bmp, 8 bit, 16 bit, 32 bit etc.)
- wallpaper picture size has no impact (it will look just as bad if you use 640x480, 800x400 or 8000x4800 pixel)
- if you put 800x400 wallpaper, it will not be stretched in any way - it will fill up the screen exactly 100% full, so people reporting 640x440 photos having better quality when used as wallpapers were having a placebo effect.
- the default Manila wallpaper is crisp sharp - no trace of any quality degradation.
- all default Manila wallpapers are very simple looking, with small number of colors, and very short range of colors (mostly it's just shades of gray and black)
- TF3D obviously applies some kind of compression algorithm to any applied photo, increasing brightness and applying very, very, very agressive image compression.
I believe it is this compression that is the cause of the image degradation. If someone could find the registry key to turn it off, I assume the problem would be solved. I also have a feeling that this compression was pushed up so high in order to speed up TF3d.
I am attaching an enlarge example of this compression. Original wallpaper vs. how it looks on TF3D.
I have no idea if I should move this somewhere else..
so Rozenthal, is this meant to be a development thread?
Well, more of a "hacking" if you want. If an application would arise from this, it would sure be great, but tracking down the problem itself and finding a manual solution would be also very much appreciated.
I posted this into this forum because I figure here's where most of the people dealing with Manila graphics are hanging out.
Bla, fixing up my CFC patch for Manila to be able to load PNGs would possibly solve this. However I seem to recall something about the background always being shrunk to 512x512 max with the vertexes then stretched to fill the screen. Not completely sure on that, though.
And yes, QTC compression (used for Manila) is definitely lossy. It can be pretty decent though, depending on the editor you use.
Chainfire said:
Bla, fixing up my CFC patch for Manila to be able to load PNGs would possibly solve this. However I seem to recall something about the background always being shrunk to 512x512 max with the vertexes then stretched to fill the screen. Not completely sure on that, though.
And yes, QTC compression (used for Manila) is definitely lossy. It can be pretty decent though, depending on the editor you use.
Click to expand...
Click to collapse
Chainfire, you must be reading my mind! I was just now reading that thread of yours where you used CFC to resize images for QVG and was going to write to you
I believe that information you provided in that thread MUST be somehow linked to this problem. I have only skimmed through your thread, but from what I understand there is in fact a compression algorithm involved in all Manila graphic files?
About the 512x512 - I can almost certainly say that this is not the case in Touch HD. The images you use for wallpaper do not get scaled in any way if they're in 800x400 resolution. They stay the same (this was the first thing I tested). However, they do seem to go through some sort of compression that causes any kind of graphic to look bad.
So, you're saying there's a way to manually compress with better results? But what then? How do we apply the custom-compressed image? I'm guessing it would be necessary to first find out which file is the default Manilla wallpaper, and then replace the new one with that? Would that work? Can this somehow be automatized?
I know it's a lot of questions, and it's late, but any help would be appreciated, especially because I feel that this might be the closest we got to solving this damn problem.
Cheers!
Have you tried interlacing your .pngs? I realized that interlacing my images for manilla 2D themes helped. I was also under the impression that HTC has some special compression going on with their images, but while saving my images in photoshop, I save them in .png and select interlace option in the end. Try it.
Here's what's up:
1. When you save images for your pocket PC, they DO have to be in a loss less format, such as .png... This goes for Homescreen backgrounds as well, so when you save a picture off your phone camera, it'll be pixelation by default because they're usually in .jpeg format.
2. When you save images in Photoshop, in a format like .png. Save them as Interlaced images, or they'll come out crappy on the device.
3. If you are using the color overlay feature in Photoshop to, say, change the color of the image, There will be pixelation if there are any gradients in the picture. Most of the images in the Manilla 2D theme files have gradients, so almost all of them result in pixelation. What you have to do for those is: Zoom in and use the Blur tool (Smart Blur filter on larger images.) to smooth out the pixelation!
Hope this works for other people, and if someone can contribute anything else, it would also be appreciated.
The screen is 800x480 isn't it?
yes it is 800*480
makes me feel bad that it looks like that on such a beautiful device.
its obviously unacceptable that HTC playes like that.
i dont understand whats their big problem to give us some drivers that would solve this annoying issue
Here, try this file out. Make a backup copy of yours unless its cooked in rom, that way you can delete this if necessary. It makes a difference for me. In this section of script, I changed the values to 200, 200 and it was reeeeeally crappy. I did that when I was checking effect. Originally it was 512, 512. In this one, I made it 800, 800.
I think it also makes bg's better if you make them square(in my case 640x640), especially if your using the new landscape manila. I know on touch pro, the rotation works better with bg's that don't have to be stretched.
BackgroundAsyncImageFactoryLoader = AsyncImageFactoryLoader()
BackgroundAsyncImageFactoryLoader.Priority = TaskPriority_BelowNormal
BackgroundAsyncImageFactoryLoader.Quality = 100
BackgroundAsyncImageFactoryLoader.OnComplete:connect(BackgroundImageResized)
BackgroundAsyncImageFactoryLoader:ResizeImage(machineStatus.HomeBackgroundPath.Value, CachedImagePath, EncoderType_JPEG, 800, 800, true, false)
Click to expand...
Click to collapse
Does anyone know what the true, false is at the end of that line?
Re Wallpaper Resolution
I'm sorry but the Wallpaper you have as an original is of such poor quality that no phones resolution could correct it. I have a Touch HD myself and have made many Themes for all different phone resolutions and now for my new phone as well and have never had trouble getting what I expected and I use all of the graphic formats ie: .png .jpg etc.
For WVGA the Backgrounds actually need to be 480 x 696 for portrait and 800 x 366 for Landscape, what has not been taken into account is the size of the top and bottom bars which are both 52 pixcels adding up to 104 pixcels this needs to be subtracted from the overall size.
http://forum.xda-developers.com/showthread.php?t=492857&highlight=touchflo+vista
stickfigure said:
Have you tried interlacing your .pngs? I realized that interlacing my images for manilla 2D themes helped. I was also under the impression that HTC has some special compression going on with their images, but while saving my images in photoshop, I save them in .png and select interlace option in the end. Try it.
Here's what's up:
1. When you save images for your pocket PC, they DO have to be in a loss less format, such as .png... This goes for Homescreen backgrounds as well, so when you save a picture off your phone camera, it'll be pixelation by default because they're usually in .jpeg format.
2. When you save images in Photoshop, in a format like .png. Save them as Interlaced images, or they'll come out crappy on the device.
3. If you are using the color overlay feature in Photoshop to, say, change the color of the image, There will be pixelation if there are any gradients in the picture. Most of the images in the Manilla 2D theme files have gradients, so almost all of them result in pixelation. What you have to do for those is: Zoom in and use the Blur tool (Smart Blur filter on larger images.) to smooth out the pixelation!
Hope this works for other people, and if someone can contribute anything else, it would also be appreciated.
Click to expand...
Click to collapse
Of course I tried. I tried interlacing both PNG and GIF's, I also tried different color depths, and all supported picture formats. It had no impact.
The thing is images don't look crappy on the device - when you view them in Album application, they look excellent. Actually, they look better then on my 30" Apple cinema screen, because HD has such huge pixel density.
However, when you apply these images to act as wallpapers on Home screen, they drop in quality and sharpness so much that it degrades the whole device appearance. And this is very annoying
grzegorz10 said:
I'm sorry but the Wallpaper you have as an original is of such poor quality that no phones resolution could correct it. I have a Touch HD myself and have made many Themes for all different phone resolutions and now for my new phone as well and have never had trouble getting what I expected and I use all of the graphic formats ie: .png .jpg etc.
For WVGA the Backgrounds actually need to be 480 x 696 for portrait and 800 x 366 for Landscape, what has not been taken into account is the size of the top and bottom bars which are both 52 pixcels adding up to 104 pixcels this needs to be subtracted from the overall size.
http://forum.xda-developers.com/showthread.php?t=492857&highlight=touchflo+vista
Click to expand...
Click to collapse
The image I attached is 600% blown up version, that's not full size wallpaper.
And it doesn't matter what kind of quality of image I use - the images always appear much less sharp and with reduced quality when applied to home screen wallpaper.
Also, I don't think you're right about 480x696. That is the "visible" area of the screen, but homescreen wallpaper will always be used in 100% if the width is 480 or height 800. It might get cropped tough, can't say that for sure.
But, for example lets say you want to use image that is 800x800 in original resolution. When you set it as wallpaper, it will not be resized to fit 696 height, but rather it will be cropped on the sides, and the top and bottom bars will cover the top areas of the image. But there will be no scaling involved. This can be easily tested simply by overlaying the original image over the captured image of the device.
showaco said:
Here, try this file out. Make a backup copy of yours unless its cooked in rom, that way you can delete this if necessary. It makes a difference for me. In this section of script, I changed the values to 200, 200 and it was reeeeeally crappy. I did that when I was checking effect. Originally it was 512, 512. In this one, I made it 800, 800.
I think it also makes bg's better if you make them square(in my case 640x640), especially if your using the new landscape manila. I know on touch pro, the rotation works better with bg's that don't have to be stretched.
Does anyone know what the true, false is at the end of that line?
Click to expand...
Click to collapse
Hey, thanks! I have tested this, using 640x640 images, as well as 800x480, and 800x800. I can't say if it's a placebo effect, but the image does look slightly better.
Could I ask you to make a few versions of this file with parameters that can be substracted by 512? Because if I remember correctly, Manila likes those 512 numbers. So, if you would be so kind to make 1024x1024, 1536x1536, and 2048x2048.
I would be glad to test them to see if there are any further improvements over this issue.
Ok, I tested everything again with a different wallpaper, so there's no more question whether the source file is good quality.
I think this image is suitable, because it has a lot of small details, but also large areas with soft transitions, so we can see the effect of compression on both the detail and the textures.
I also tested 696 file, and as I said earlier - it has absolutely no positive effect to image quality.
I have also noticed that in fact even the HTC Album applies some sort of image compression, but it's much much less visible! You can notice the effect of this on the dark area transitions. However, it's barely noticable when viewed on the device.
Perhaps if someone who knows where the HTC Album Manila files are, maybe it would be possible to compare them with the files that control compression in Home screen? Perhaps it would be enough just to copy the settings for HTC Album? Just an idea...
I'm attaching the files, they speak for themselves.
ok i've search in the registry with:
compress
quality
jpg
wallpaper
desktop
but nothing
BadCluster said:
ok i've search in the registry with:
compress
quality
jpg
wallpaper
desktop
but nothing
Click to expand...
Click to collapse
So did I Same results.
I don't think it's that simple anymore. We probably need to combine 2 things: the edited Manila file to support graphics up to 800 pixels, a way to easily compress a photo with ATC compression and then make Manila use it.
OK, I think I finally figured out some stuff. First of all, we knew from before that wallpaper image for landscape was made out of 2 bitmaps.
However, it seems that this is the same case with the portrait wallpaper as well.
Digging through Manila graphic files I've found that indeed the maximum image size is 512x512pixels. So, in order to get the 480x696 pixel needed to cover the whole visible screen area, guys from HTC simply used 2 images, each with 512x512 resolution, but first actually covering 480x512 area, and the second 480x184.
Together, as you can see, they make 480x696.
But, what happens when you load 800x400 pixel image?
Most likely that the image first gets cropped to 480x696 dimensions, and after that top part (480x512) is put into one file, and the bottom part (480x184) is put into a separate file. They both get compressed with that ugly algorithm and that's why we end up with crappy looking wallpaper photos.
Files involved are:
LANDSCAPE:
29cff4fe_bglevel0_landscape_left.png
058acf31_bglevel0_landscape_right.png
PORTRAIT:
70083a29_bg_level0.png
77feee1d_bg_level0_bottom.png
Now, it's clear that Manila indeed does support full resolution, but because the wallpaper is being split into 2 parts and compressed, we have poor image quality. What brings us back to my first idea - is there a way to disable this compression, or increase the quality of the compressed photo by somehow forcing the compression algorithm to produce higher quality images?
Another way would be to use a Manila editor, cut the images into 2 manually, update old Manila default wallpaper files and always use the default background.
This is of course major pain in the a$$ to do each time you want to simply change a wallpaper.
Oh and by the way, for the record, I just manually updated these Manila graphic files, overwrote the old ones and I'm looking at my full-resolution wallpaper right now.
So, this obviously can be done. The question is can it be automatized?
this is a tricky subject.. well i've always edited the 4 manila files to create my wallpapers on my Raphael.. well i also tried background for all tab but that's kinda buggy in the prosess of when i change from portrait to landscape.. well it's like the background for all tab app kinda takes the image i want as background and overlap the 4 manila files that has to be edited manually to make a great background,... well anyway i'm stuck with the same thoughts as this thread states... it's not so fun to always have to edit those manila files to create a good background and so forth...
i'm finishing up a program that will automatically split an image into the chunks necessary for Manilla 3d for blackstone.
If there is enough interest i'll make it public
err... need to move this to the applications forum. posted under general. oops.
Brilliant idea. Release it!
Sounds great! I would definitely use it!
You got my vote man! This would be cool.
thumb up on that
u have my vote as well...read through how to make wallpaper look good.....but to be completely honest it's a mission....for maniacs....so ur tool would bring that ability to have nice background to everyone
keep up ur work
Will this program make backgrounds at hi quality??? ---> something like here: http://forum.xda-developers.com/showthread.php?t=500178
Anyways I vote for it!!!
Great work! I too am curious if the image is high quality as discussed in the post above me. I believe the member Chainfire was working on a gui to do the same thing and resulting in High quality backgrounds. Also, after using your program, is there a line in portrait where the two portrait images meet or does it align perfect?
this will make the portrait and landscape PNG chunks at high quality so that you can load any image into it. This program will take care of the resizing/scaling/tiling. You'll still have to use something like CFC GUI (just copy the 4 png files and follow the steps in that thread) if someone can provide me with the compression algorithm used by manilla i can implement it to cut that step out so that you can go straight to the manilla folder
bcrisp82 said:
this will make the portrait and landscape PNG chunks at high quality so that you can load any image into it. This program will take care of the resizing/scaling/tiling. You'll still have to use something like CFC GUI (just copy the 4 png files and follow the steps in that thread) if someone can provide me with the compression algorithm used by manilla i can implement it to cut that step out so that you can go straight to the manilla folder
Click to expand...
Click to collapse
Sweeeeet!!!!!! ----> I want that app!!!!
released
http://forum.xda-developers.com/showthread.php?t=505995
Is there any registry tweak that will allow you to zoom in closer with the album viewer software. It works great for the files I view but I need to be able to zoom in much more than it allows
Thanks
Mike
Correct me if I'm wrong, but I think you can zoom in as far as the resolution of each image allows. I have some pretty high-res photo's (taken on a digital SLR) and I can zoom in on them until I start to see pixels. If you have low-res pics, you'll start seeing pixels much sooner.
Zooming in any further would be useless since it can't add any detail, you'll just see pixels the size of Lego blocks.
Edit: I realize you may want to examine an image pixel-per-pixel for some reason. In that case, sorry, I can't help.
Thanks for your response, If I could zoom in that close it would be great. I have some hi resolution files anywhere from 6-10 MB which open fine but I can only zoom in about 3 levels. If I could go to the level you describe, it would more than meet my needs.
Hm... Maybe there is a limit after all. I must admit I haven't tried any files in the 10mb region.
I've taken a quick look in the registry but I haven't come across anything that looks like it might solve this. Sorry.
I looked in the registry too but couldn't find any reference to HTCalbum at all. Guess I'll just have to start trying all the demos of the photo apps again...
There's a bunch of stuff under 'HKLM/Software/HTC/HTCAlbum'. Maybe you can find something I overlooked there.
Thanks, don't know why Resco didn't find that ref, I thought it scanned all directories. I couldn't find anything there either. I did change a dword from 2 to 3 in wheelzoomin frames but that didn't do anything obvious so I changed it back. Wonder if HTC support might be able to help, I've read that they're quick to respond to customer software issues but since this is more of a preference issue vs buggy software they may not offer up much.
Yeah, today I copied a 78 mega pixel image (actually a map) to my Leo and to my surprise, I can't zoom more than a certain amount in HTC Album. Anyone know a fix for this?
use resco photo manager, that one allows you to zoom in much more than the htc album. The newest version also supports multi-touch!
thanx! Tried resco; I'm flattered how they implemented multi touch this soon! only a month and a half after Leo's release.
It's really nice and fast (even faster refresh time than htc album) but I wish u could disable multi touch rotation. It's constantly confusing pinch with rotation.