Solved

WinCE6.0: Making the UI faster

Posted on 2009-07-14
4
367 Views
Last Modified: 2013-12-05
I am building a full screen UI application on Win CE 6.0 device with touch
screen. There are 30 different screens in the UI and each screen is a jpg
file. Each file is around 60KB.
Initially I tried to add all the images as resources and that increased the
application size to 1.7 MB (from 200KB) and I couldn't run that because of
RAM resources.

So, now I am accessing the images from SD card. Eachtime the user touches
the screen, Iam Disposing the current image and importing a new image from
SD, converting that into bitmap and finally displaying the image. This
process is creating a delay of around 1 sec which is noticeable.

What's the best way to handle "Picture slideshow" kind of applications?
(reducing the delay is the main criteria).

I have also tried to access the images from NAND Flash and it's also taking
around 1 sec with the applicaiton (it's a managed application with .net CF2).

Any suggestions on how to handle this?. Thanks in advance for your help.
Thanks,
K



0
Comment
Question by:ukalyan
  • 2
  • 2
4 Comments
 
LVL 4

Expert Comment

by:bullmonkey
ID: 24855526
60k is a reasonably large file size for the resolution of a machine running ce , is it not possible to convert the jpg to a vector thus reducing the file size?

incidently what is the screen resolution?
0
 
LVL 4

Expert Comment

by:bullmonkey
ID: 24855539
a typical screenshot of one of the pages might help too, just to see the detail of the image to be displayed
0
 
LVL 33

Expert Comment

by:pgnatyuk
ID: 24857145
If the size on the SD-card is not a problem, I'd propose to to keep all images in a "raw" format.
Make a convertor that will load all jpeg images, convert them into the standard DIB section and save the bitmap header and the bit array. So the loading from the main app will be trivial - allocate memory for the BITMAPINFO, load the header, create DIB section and copy the bit array from the saved data into the DIB section.
Atually all that happens when you load JPEG, but in this way you will not unpack the data. So another option can be to find a faster JPEG loader. What you use now?
0
 
LVL 33

Accepted Solution

by:
pgnatyuk earned 500 total points
ID: 24857164
One more possible way is load images in a separate thread. Of course control the memory - for example, keep in the memory 3-5 loaded images. When the third image is on the screen, the thread can release the first image and load the sixth.
0

Featured Post

The curse of the end user strikes again      

You’ve updated all your end user’s email signatures. Hooray! But guess what? They’re playing around with the HTML, adding stupid taglines and ruining the imagery. Find out how you can save your signatures from end users today.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Our Group Policy work started with Small Business Server in 2000. Microsoft gave us an excellent OU and GPO model in subsequent SBS editions that utilized WMI filters, OU linking, and VBS scripts. These are some of experiences plus our spending a lo…
NTFS file system has been developed by Microsoft that is widely used by Windows NT operating system and its advanced versions. It is the mostly used over FAT file system as it provides superior features like reliability, security, storage, efficienc…
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
The Task Scheduler is a powerful tool that is built into Windows. It allows you to schedule tasks (actions) on a recurring basis, such as hourly, daily, weekly, monthly, at log on, at startup, on idle, etc. This video Micro Tutorial is a brief intro…

895 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now