# 錄制示例-Recorder
功能描述:連接設備開流 , 錄制當前視頻流到文件,并通過ESC_KEY鍵退出程序
> 本示例基于C++ High Level API進行演示
首先需要創(chuàng)建一個Pipeline,通過Pipeline可以很容易的打開和關閉多種類型的流并獲取一組幀數據
ob::Pipeline pipe;
獲取深度相機的流配置
depthProfile = std::const_pointer_cast<ob::StreamProfile>(profiles->getProfile(OB_PROFILE_DEFAULT))->as<ob::VideoStreamProfile>();
通過創(chuàng)建Config來配置Pipeline要啟用或者禁用哪些流,這里將啟用深度流
//配置Pipeline打開的流類型
std::shared_ptr<ob::Config> config = std::make_shared<ob::Config>();
config->enableStream(depthProfile);
啟動在Config中配置的流,如果不傳參數,將啟動默認配置啟動流,啟動錄制開關
pipe.start(config);
pipe.startRecord("./OrbbecPipeline.bag");
以阻塞的方式等待一幀數據,該幀是一個復合幀,里面包含配置里啟用的所有流的幀數據,并設置幀的等待超時時間
auto frameSet = pipe.waitForFrames(100); //設置等待時間為100ms
停止Pipeline,將不再產生幀數據
pipe.stop();
程序正常退出后會釋放資源