CAPABILITIES
围绕你的业务,组织数据能力。
保存的不只是数据值,还有它们发生的先后顺序。
结构化数据采样
以时间戳与 ElaVariant 记录已注册的业务对象、图像或组合数据,保留数据的类型信息。
recordMetaSample核心采样独立查询
关键采样同时写入主序列并独立组织;初始化后可按类型读取,无需先启动播放。
recordCoreSample · getCoreSamples完整的回放控制
开始、停止、暂停、恢复,以及正向和反向回放;采样通过信号批量交付业务视图。
startReplay · pauseReplay倍速与时间定位
按时间戳定位、调整回放速度,或通过尽速追赶模式抵达目标位置,聚焦需要的片段。
setReplaySpeed · seekTo · promptlyTo分块压缩与索引
LZ4 分块压缩配合三级索引;回放预取与缓存,减少重复读取和解压。
Chunk · SampleBlock · ChunkBlock回放前的条件筛选
初始化后、开始回放前,同步筛选普通采样并返回匹配结果,提供筛选进度通知。
filterMetaSampleC++ / QT · CODE EXAMPLES
记录采样,再沿时间轴重现。
为采样写入毫秒时间戳,加载索引后筛选数据并开始回放。
录制采样 · C++14
ElaRecordSession record("SensorSession");
record.startRecord(outputDirectory);
ElaSensorSample sample;
record.recordCoreSample(0, sample);
sample.temperature = 26.0;
record.recordMetaSample(20, sample);
record.stopRecord();筛选与回放 · C++14
replay.initReplay(indexPath);
// 筛选在首次回放前执行。
const auto warmSamples = replay.filterMetaSample([](const ElaVariant& value) {
return value.value<ElaSensorSample>().temperature >= 25.0;
});
replay.setReplaySpeed(2.0);
replay.startReplay();类型注册 · C++14
struct ElaSensorSample {
int deviceId{1}; // 采样设备标识。
double temperature{25.0}; // 温度,单位摄氏度。
};
ELA_BEGIN_META(ElaSensorSample)
ELA_FIELDS(deviceId, temperature)
ELA_END_META()API 用法片段,省略工程初始化与错误处理,仅展示核心功能。
WHERE IT FITS
把能力带入实际场景。
设备运行回溯
保存状态变化与关键采样,在问题发生后查看过程。
仿真与采集复盘
利用时间定位、倍速和方向切换,关注需要分析的片段。
业务视图重现
将回放采样交给界面或模型,以同一份数据驱动历史状态展示。
INTEGRATION NOTES
接入之前,了解这些细节。
先结束录制,再初始化回放
stopRecord 完成会话收尾后,再使用生成的 .rmi 索引初始化回放;同名录制文件会被覆盖,应管理好会话目录。
筛选发生在首次播放之前
filterMetaSample 是同步扫描,仅在成功初始化且尚未启动播放时使用。大文件筛选应放到工作线程,结果不会改变原回放序列。
结构化回放与视频编码
图像可以作为业务采样录制,但组件不提供 MP4 / H.264 编码。回放信号用于驱动你自己的业务视图。
Liniyous · Ela 开发者
QQ80985
微信liniyous
ElaMetaRecorder 为付费项目;具体授权以沟通确认为准。