if(lock_surface(&graphic_buf, &output_width, &output_height, &bpp) < 0){
    LOGE("ERROR! can not lock canvas");
    continue;
}
yuv420_2_rgb565(yuv_location, graphic_buf,
        output_width, output_height, output_width<<1);
unlock_and_post_surface();