整体记录与回放
整体记录与回放
DEPTHAI_REPLAY 环境变量设置为记录的路径来回放它。整体记录与回放通过记录应用程序中使用的源节点(Camera 和 IMU)的校准、相机特性信息和数据(消息)来工作,然后可以像源节点再次发送相同数据一样进行回放。整体记录
tar 文件中。这可以在代码中启用:Python
Python
1with dai.Pipeline as pipeline:
2 config = dai.RecordConfig()
3 config.outputDir = "./recordings";
4 config.videoEncoding.enabled = True # 使用视频编码
5 config.videoEncoding.profile = dai.VideoEncoderProperties.Profile.H264_MAIN
6
7 pipeline.enableHolisticRecord(config)DEPTHAI_RECORD 环境变量:Command Line
1DEPTHAI_RECORD="./recordings" python3 application.py环境变量配置
DEPTHAI_RECORD 环境变量被设置为记录输出目录。这启用了具有默认配置选项的整体记录。如果您想要更多控制,可以将变量设置为指向配置文件:JSON
1{
2 "outputDir": "recordings/",
3 "compressionLevel": 3,
4 "syncCameraOutputs": true,
5 "videoEncoding": {
6 "enabled": true,
7 "bitrate": 0,
8 "lossless": false,
9 "profile": "MJPEG",
10 "quality": 80
11 }
12}outputDir设置记录的输出目录compressionLevel配置元数据的压缩。范围从 0 到 5(含),对应以下压缩级别:NONE、FASTEST、FAST、DEFAULT、SLOW、SLOWESTsyncCameraOutputs启用相机输出同步。这可以防止丢弃的消息在回放到 StereoDepth 或需要同步帧的类似节点时引起问题。videoEncoding配置用于编码相机流的 VideoEncoder:enabled启用 VideoEncoder。当设置为false时,记录的是 Camera 节点的输出,这可以降低设备 CPU 使用率,同时增加带宽使用量profile设置编码配置文件bitrate设置 VideoEncoder 的比特率(设置为 0 时自动确定)lossless确定在适用时编码是否无损quality确定在适用时的编码质量
功能示例
整体回放
Python
Python
1with dai.Pipeline as pipeline:
2 pipeline.enableHolisticReplay("./recordings/recording.tar")DEPTHAI_REPLAY 环境变量:Command Line
1DEPTHAI_REPLAY="./recordings/recording.tar" python3 application.py功能示例
限制
- 由于回放需要将消息从主机发送到设备,因此使用此功能会显著降低管道的帧率。
- 回放时,帧时间戳可能会在每次循环时发生漂移,因为每次相机流的循环时间戳偏移量都是独立计算的。这可能导致一段时间后消息同步出现问题。
- 目前,只能对单设备管道进行整体记录和回放。