camera CPU占用率高问题
平台是:WINCE6.0 + DM3730(1GHZ)
APP:DirectShow
分辨率:720*576 (15帧)
问题:
打开camera应用,只是preview,CPU的占用率都高达%40---%50。要是把录像功能打开的话,CPU的占用率高达%80.还没算上加录音。这里我的录像是采用了DSP的。所以编码部分不用担心CPU的负载。
1. 手头没有一个参考,不知道在WINCE下,预览15帧,720*576的这种CPU的占用率一般是多少,我的属于正常还是不正常,到是有个mobile的参考,320*240(15帧)的CPU占用率是%15,我测试过数据量小,CPU的占用率会降低,自己测试过640*480的,占用率在%30多
2. 查过整个预览的流程,我做过测试,当camera中断来后,只是一个普通的拷贝,不将数据传递给APP,也就是不要fillbuffer,CPU的占用率还是很低的,只有%5,这点说明camera驱动对于读取数据对CPU的损耗一点都不大,可是我只要去fillbuffer,这个占用率就飙升了%40。
3. fillbuffer只是做了一次拷贝,给APP传递了一个消息,然后APP去enquebuffer,然后继续等中断,fillbuffer,连续下去,这就是驱动做的事情,这个过程会引起CPU的负载高吗?
4. 如果camera驱动没有引起CPU的占用率高,难道是显示驱动引起的吗?我如何才能排查显示驱动在camera应用对CPU的影响。
5. camera的应用是dshow,我就是用那种非常简单的智能连接,都是renderstream那种,微软标准的框架,难道是他自己本身就这么高?
求讨论