[求助]请教一个FrameBuffer速度的问题
时间:2006-10-24
来源:互联网
今天我写了个小程序测试,在一个100*640的矩形了,以逐行上滚的方式显示一些汉字时,发现滚动速度很慢,中间没有任何的认为延时。我的过程大概是这样:
定义两个char *指针fbp和fbp1,再定义一个数组TextBuffer[100][640],fbp是显存在内存中的映射,fbp1是显存缓存,TextBuffer是汉字对比字模转换后的点阵内容,循环100次,每次把TextBuffer写到fbp1后再用memcpy到fbp1,结果是可以逐行向上滚动直到写满整个100*640的矩形,只是速度很慢,达不到我的要求。
请问各位兄,是我的程序算法有问题,还是FrameBuffer本身就达不到这种要求呢?不过好象也有一些比较大的GUI图形库也以FrameBuffer为基础,还是我对FameBuffer用法有问题呢,是不是要直接操作显卡S1D13506的寄存器,进行硬件加速呢,请各位有经验,比较熟悉这方面的兄弟介绍一下吧,谢谢!
作者: alldying 发布时间: 2006-10-24
作者: AIKO_sex 发布时间: 2006-10-25
我原来用2.6的,也是用你类似的双缓冲方法绘制位图,速度也是相当的慢
现在我用2.4的,应用程序没有做任何改变就跑的很快...
我也很郁闷哦...
作者: jojolin 发布时间: 2006-10-27
谢谢jojolin,我用的就是2.4的内核啊,你的问题解决了吗?方便的话能把你的这部分的代码给我参考一下吗?[email protected],谢谢!
作者: alldying 发布时间: 2006-11-07
如果循环时间长,每次就多移动一个位置!
作者: 风雪狂客 发布时间: 2006-11-07
你的意思是没次往上走2行或者3行?我试过了,这样显得更不连贯,突然往上走一段,停住,我想要的是很连续的往上走,就象我现在做到的这样,但是速度要比现在快很多。
我也用过MINIGUI,不过它也不支持S1D13506的硬件加速,不知道有哪个图形库可以支持S1D13506的硬件加速,低级点没关系,只要速度快,因为我只是显示一些文字或图片内容,以不同方式进出屏而已(进出屏方式类似常见的广告的效果,也类似PowerPoint里的 进出方式),不需要传统的图形用户界面的窗口、对话框、按纽等,请这方面熟悉的兄弟们指点一下,推荐一个图形库吧,谢谢!!!
作者: alldying 发布时间: 2006-11-08
作者: 风雪狂客 发布时间: 2006-11-08
没办法,这种进出屏方式是我们产品的基本显示功能,如果显示区域有100个pixel高的话,就只能循环100次,每次整体往上移1个pixel,暂时我也没想到别的方法。
如果实在没有能使用s1d13506的硬件加速功能的图形库的话,那我只能自己写了。不过我没搞过这个,只知道通过FrameBuffer可以把显卡的控制寄存器映射到物理内存空间,然后就可以访问这些寄存器了,具体怎么映射,怎么设置寄存器达到加速的目的还是不清楚,风雪狂客能不能详细些指点一下,或者给点资料,网址什么的,谢谢!!!
作者: alldying 发布时间: 2006-11-08
要么是批量处理
windows都不建议刷新太频繁,严重消耗cpu
作者: AIKO_sex 发布时间: 2006-11-08
我在windows下用bitlbt挺顺的啊,如果Linux下不用bitblt,有什么好办法呢,跟你回的我的另外一个贴子“请指点一下嵌入式系统上图形库的选择”一样,我考虑自己写硬件加速部分,不过还没什么头绪,能不能详细指点下呢,谢谢!
作者: alldying 发布时间: 2006-11-09
您需要先完成驱动,然后再完成应用程序!
作者: 风雪狂客 发布时间: 2006-11-09
作者: alldying 发布时间: 2006-11-09
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28