OrbbecViewer 录制时 申请内存失败


我通过viewer录制深度图像的png和rgb发生了内存申请失败。我的相机是femto Bolt

allocated=2042.807MB, max limit=2048.000MB
[03/01 09:44:07.050144][critical][7268][FrameBufferManager.cpp:88] Alloc frame buffer failed! size=6666703
[03/01 09:44:07.050493][warning][7268][ObException.hpp:40] Alloc frame buffer failed! size=6666703
[03/01 09:44:07.050900][warning][7268][MfUvc.cpp:1146] Execute failure! A libobsensor_exception has occurred!
- where:1146#libobsensor::pal::WmfUvcDevice::OnReadSample
- msg:Alloc frame buffer failed! size=6666703
- type:class libobsensor::memory_exception
[03/01 09:44:07.058387][debug][16664][FrameBufferManager.cpp:35] New frame buffer allocated=1.978MB, total usage: allocated=2044.785MB, max limit=2048.000MB
[03/01 09:44:07.058485][debug][16664][FrameBufferManager.cpp:35] New frame buffer allocated=1.978MB, total usage: allocated=2046.763MB, max limit=2048.000MB
[03/01 09:44:07.058592][warning][23284][FrameBufferManager.cpp:43] Alloc frame buffer failed! Out of max size! require=5.933MB, total usage: allocated=2046.763MB, max limit=2048.000MB
[03/01 09:44:07.058713][warning][23284][FrameBufferManager.cpp:82] allocBuffer failed! Will retry after release idle memory on FrameMemoryPool
[03/01 09:44:07.059214][debug][23284][FrameBufferManager.cpp:54] Frame buffer released=1.978MB, total usage: allocated=2044.785MB, max limit=2048.000MB
[03/01 09:44:07.059229][warning][23284][FrameBufferManager.cpp:43] Alloc frame buffer failed! Out of max size! require=5.933MB, total usage: allocated=2044.785MB, max limit=2048.000MB
[03/01 09:44:07.061636][critical][23284][FrameBufferManager.cpp:88] Alloc frame buffer failed! size=6221263
[03/01 09:44:07.062060][warning][23284][ObException.hpp:40] Alloc frame buffer failed! size=6221263

由于当前Orbbec Viewer应用的内存缓冲区仅有2048MB,当上位机磁盘写入速率较慢时,可能会导致帧堆积,进而使内存缓冲区填满。
解决此问题的方法有两个:
1、减少单次存图的数量。
2、修改Orbbec Viewer目录下的OrbbecSDKConfig_v1.0.xml文件,根据实际情况调整MaxFrameBufferSize字段来增大内存缓冲区。