title: How to increase performance of bitmap drawing on Android
body: <p>I created a movie player based on FFmpeg. It works fine. The decoding is quite fast, on LG P970 (Cortex A8 with Neon) I have an average 70 fps with 640 x 424 resolution video stream including YUV2RGB conversion. However, there is one bottleneck. It is drawing on Canvas. </p>
  
  <p>I use jnigraphics native library to fill picture data into the bitmap in the native side and then I draw this bitmap on Canvas in SurfaceView. It is quite simple and common approach, but the drawing takes 44 ms for bitmap with 640 x 424 resolution which reduces fps to 23 and makes this technique unusable... It takes a lot more then the whole A/V frame decoding!</p>
  
  <p>Is there any method how to draw bitmaps significantly faster? I would prefer to render completely in the native code using OpenGLES 2, but I have read it also could be <a href="https://stackoverflow.com/questions/8867616/android-ffmpeg-opengl-es-render-movie">slow</a>. So what now?... </p>
  
  <p>How can I render bitmaps as fast as possible?</p>