Hi Ivo,

Thank you for your reply !

Quote Originally Posted by Ivo Moravec
Why are you trying to upload a new bmp on each frame when you said all you want to do is rotate it?
If that is all you are doing, you should not be doing step iv in the render loop at all (only steps i.-iii.).
Right. If I work on a single image, step iv will not be used.
The reason I am uploading new bmp images is I need to work on image sequence. My application will read a bmp image from storage, do some manipulations (such as rotation), and send it to next module for further processing. This procedure should be performed for each image in real-time (e.g. 30 frame/sec).
Doing all these procedures on ARM-only platform cannot achieve our target frame rate. That's why I approached to GPU.

The image sequences(size 512x512) are typically more than 10 minutes, so it would not be possible to load all of them to GPU side at the initial stage.

Quote Originally Posted by john_h
Also for a speed up, try using nearest neighbor sampling on your image (create the image with VG_IMAGE_QUALITY_NONANTIALIASED) and see if that speeds things up for you any.
Yes, I will try this sampling mode and compare the speed and quality.