wince 6 使用500W摄像头拍照占用内存过大问题
使用环境:
CPU:6410
RAM: 256M (运行内存150M左右)
系统:WINCE 6.0
摄像头:5M(500万,最大像素2592*1944)
现象描述:
设置摄像头输出为2592*1944,buffer都设到足够大(2592*1944*2),预览设置为2592*1944,使用DSHOW程序控制摄像头。
DSHOW程序中只要设置
CHK(m_pCaptureGraphBuilder->RenderStream( &PIN_CATEGORY_STILL, &MEDIATYPE_Video, m_pVideoCaptureFilter, NULL, m_pImageSinkFilter ));
就会发现占用内存过大(已使用内存超过120M),这时,无法预览成功。屏蔽掉这一句之后可以预览成功,但不能进行拍照。
而我把这个摄像头设置为300W的时候,一切正常,设置到500W就出现这样的问题。设置为300W的时候,已使用的内存达到130多M。
300W和500W占用的内存对比,发现500W的少于300W的,同时从调试信息中看到,500W那个无法预览的时候,申请内存还有一次没有出现。
得出结论:内存不足,无法支持到500W摄像头。
请问各位有没有遇到占用内存过大的问题,有解决的方法吗?
在网上看到有的人说这个是三星camera的bug,不知道是否如此?
我试过预览使用低分辨,拍照那一下才重新配置为500W/300W,拍完之后,再重新配置为低分辨率进行预览。发现情况依旧。
期待各位高手、大大出现