基于知识图谱与大模型的PromQL自然语言查询生成方案
2026/10/28 0:55:43
–
EdsSendCommand### EdsSendCommand向相机发送控制命令,例如:
EdsErrorEdsSendCommand(EdsCameraRef inCameraRef,EdsCameraCommand inCommand,EdsInt32 inParam);inCameraRefinCommandEdsCameraCommand)inParam| 命令 | 说明 |
|---|---|
kEdsCameraCommand_ShutterButton_Halfway | 半按快门 |
kEdsCameraCommand_ShutterButton_Completely | 全按快门 |
kEdsCameraCommand_ShutterButton_OFF | 松开快门 |
kEdsCameraCommand_TakePicture | 拍摄一张照片 |
kEdsCameraCommand_DoEvfAf | Live View 自动对焦 |
⚠️不要混用两种拍摄方式
TakePictureShutterButton_*👉选一种,用到底
TakePicture(推荐)### 使用 TakePicture 拍摄1. 确保 Session 已打开 2. 相机模式支持远程拍摄 3. EdsSendCommand(camera, kEdsCameraCommand_TakePicture, 0) 4. 等待 Object Event(文件创建) 5. 下载文件✅这是最稳定的方式
不需要处理半按 / 松开
SDK 自动处理内部状态
推荐用于:
### 模拟快门按钮(Half / Full)1. ShutterButton_Halfway // 半按(测光 / 对焦) 2. (可选)等待对焦完成 3. ShutterButton_Completely // 全按(拍摄) 4. ShutterButton_OFF // 松开EdsSendCommand(cam,kEdsCameraCommand_ShutterButton_Halfway,0);sleep(200);EdsSendCommand(cam,kEdsCameraCommand_ShutterButton_Completely,0);sleep(100);EdsSendCommand(cam,kEdsCameraCommand_ShutterButton_OFF,0);⚠️极易踩坑
半按不松:
Full 后忘 OFF:
不同机型:
👉除非你真的需要对焦控制,否则不要用
### 连拍控制连拍通常通过以下方式实现:
1. Halfway 2. Completely(保持) 3. 持续接收文件创建事件 4. OFF(结束连拍)连拍期间:
建议:
否则:
### 拍摄完成事件拍摄完成后,相机会通过Object Event通知应用程序:
常见事件:
kEdsObjectEvent_DirItemCreatedkEdsObjectEvent_DirItemRequestTransfer✅正确模式
在回调中:
不要在回调里直接下载
### 视频拍摄控制(简要)部分相机支持通过命令控制视频录制:
| 命令 | 说明 |
|---|---|
kEdsCameraCommand_StartMovieShooting | 开始录像 |
kEdsCameraCommand_EndMovieShooting | 结束录像 |
视频模式:
开始前请检查:
### 拍摄前检查清单- Session 已打开 - 相机不在 Direct Transfer 状态 - 存储卡可写 - 电量充足 - 未被其他程序占用