tanwanjieke 2015-04-07 02:21 采纳率: 0%
浏览 3717

嵌入式往显示器framebuffer里拷贝数据速度过慢

往显示设备的framebuffer里写1080i的视频数据速度特别慢,拷贝一帧要200ms左右,部分代码如下:
for(j=0; j<controlSystem.height; j++)
{
memcpy(dst,pplaybuf,controlSystem.width*sizeof(unsigned int));
dst+=finfo.line_length ;
pplaybuf+=controlSystem.width;
}
如何优化或者提高速度。正常往其他内存里拷贝1080i50的一帧数据只要20ms。现在想这样:
1.每次都把要显示pplaybuf里的数据(有缓冲)映射到显示内存里,显示完卸载,下次再映射。可以实现吗?我现在遇到一个问题mmap里的MAP_FIXED参数可以使用指定的映射起始地址,但是会把之前的数据丢弃,这个不知道该怎么解决。
2.使用双缓冲,但是效果不好。每个线程的每帧拷贝时间更长了。
求大神解答该怎么办?在线等

  • 写回答

1条回答 默认 最新

  • so-what-so 2015-04-08 13:42
    关注

    改成DMA搬移效果如何?一般搬移视频数据能使用DMA不会用memcpy

    评论

报告相同问题?

悬赏问题

  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误