首页 > 移动平台 > 详细

android framebuffer

时间:2015-08-14 11:56:16      阅读:258      评论:0      收藏:0      [点我收藏+]

struct fb_fix_screeninfo 该结构体保存的是关于屏幕固定的参数

struct fb_var_screeninfo 该结构体保存的是关于屏幕变化的参数,需要获取frame buffer之前,这个结构体需要更新。

fb_var_screeninfo 的参数介绍

技术分享

xres     可见矩形的width

yres     可见矩形的height


xres_virtual     

yres_virtual


xoffset

yoffset

void copyFromFrameBuffer()
{
     kesyPrintf("copyFromFrameBuffer\n");
     update_fb_info();
     char* vfd = (char*)readBufferFB();
     
     void const* base = 0;
     
     int bytespp = 4;
     size_t offset =  fscrinfo.line_length * scrinfo.yoffset +  (scrinfo.xoffset) * bytespp;
     base = (void const *)((char const *)vfd + offset);

     int w = scrinfo.xres;
     int h = scrinfo.yres;
     int s = scrinfo.xres_virtual;
     
     kesyPrintf("w=%d,h=%d,s=%d\n", w, h, s);

     int y = 0;
     for (y=0 ; y<h ; y++) {
          memcpy(gNewBuf + y*w*bytespp, base, w*bytespp);
          base = (void *)((char *)base + fscrinfo.line_length);
     }
}


android framebuffer

原文:http://my.oschina.net/u/1445604/blog/492172

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!