F1C100S没有2D加速的原因还是因为cache等CPU配置不对?
离线
我还没有收到nano,等待中今天发现XBoot已经在test-lvgl branch中支持了lvgl
离线
我记得手册上是有2d的加速,但是第三方支持2d加速有难度,需要时间。
最近编辑记录 daydayup (2018-04-13 18:45:27)
离线
有点卡,应该有优化的余地
离线
离线
参考链接:Allwinner_F1C600_User_Manual_V1.0.pdf
看了一下手册,没有2D加速, CPU速度和内存带宽都有限,跑这种带动画效果的 littlevgl应该是比较吃力了,优化空间不大。
不过可以禁用动画效果,看看流畅度如何。
那唱戏机怎么实现动态播放视频的?因为屏幕小?
离线
实测了一下,跑上述demo的时候,lv绘图每帧大约需要35ms~75ms不等,绘图后flush数据到fb的时候耗时极短(不知是测试方法不对还是其他问题,耗时居然为零),暂时还不知道具体卡顿原因~
离线
如果只是局部更新的话,每次flush耗时大约1~15ms,具体视绘图尺寸而定~
离线
实测了一下,跑上述demo的时候,lv绘图每帧大约需要35ms~75ms不等,绘图后flush数据到fb的时候耗时极短(不知是测试方法不对还是其他问题,耗时居然为零),暂时还不知道具体卡顿原因~
我的猜测,lvgl似乎没用全屏double buffer,这个flush到fb应该是每次部分刷新,因为fb就在SDRAM所以很快
离线
另外@kgp0213兄,是否试过xboot自带的guidemo,是否卡顿?它那个实现用的cairo画图库应该开销更大
离线
另外@kgp0213兄,是否试过xboot自带的guidemo,是否卡顿?它那个实现用的cairo画图库应该开销更大
这个实测效果还不错,那个2048的程序大概可以跑到20帧左右。
cairo的原理是先把内容写满一帧,然后把帧数据地址送fb显示,然后,cairo再写另一块区域,然后再把其地址送fb显示,如此循环。
而lv是把生产的内容送的自己的缓冲区内,缓冲区满了之后在flush到fb相应的空间去,感觉速度上应该差不多,只是flush的时候可能觉得不爽吧
离线
达克罗德 说:另外@kgp0213兄,是否试过xboot自带的guidemo,是否卡顿?它那个实现用的cairo画图库应该开销更大
这个实测效果还不错,那个2048的程序大概可以跑到20帧左右。
cairo的原理是先把内容写满一帧,然后把帧数据地址送fb显示,然后,cairo再写另一块区域,然后再把其地址送fb显示,如此循环。
而lv是把生产的内容送的自己的缓冲区内,缓冲区满了之后在flush到fb相应的空间去,感觉速度上应该差不多,只是flush的时候可能觉得不爽吧
我的理解lv是部分刷新,所以能看到屏幕一块一块更新。不过理论来说,应该达到Cairo一样的20Hz应该也没问题,即使局部刷新也不会像现在这么明显。
是否有什么设置这个缓存区大小的地方?你可以试试有这个设置没有
我的nano这个周末应该能到,我也可以开始玩了
离线
你说的对,blit 到显存显然没有切换显存快, Cairo用双buffer切换省去了blit 到显存的开销。lvgl号称不需要双buffer的算法似乎对这种大内存高分屏反而是个拖累了
离线
有设置缓冲区的地方,但是好像没啥用。下次把缓冲区设定到和屏幕一样的,然后通过指针切换试试。不过我好像应该去lv的官网去找找答案。
晕哥,别睡了,快醒醒,去lv官网看看有没啥好的方法~
离线
问下kgp0213兄,您是用的git clone https://gitee.com/hufz/xboot.git 这个编译的吗?
离线