liusuyi
2024-07-11 b1084891961232e3c697ea9fc52f127cdccffb6b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
package com.ruoyi.device.camera.factory;
 
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.channel.domain.ArdChannel;
import com.ruoyi.media.domain.Vtdu;
 
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
 
/**
 *  相机SDK策略接口
 * 刘苏义
 * 2023/11/7 10:48:52
 */
public interface CameraSDK {
 
    //同步登录
    AjaxResult login(ArdCameras cameras);
 
    //异步登录
    AjaxResult asyncLogin(ArdCameras cameras);
 
    //注销
    boolean logout(String cameraId);
 
    //在线状态
    boolean isOnLine(CameraCmd cmd);
 
    //云台控制
    AjaxResult pTZControl(CameraCmd cmd);
 
    //设置聚焦值
    AjaxResult setFocusPos(CameraCmd cmd);
 
    //获取聚焦值
    AjaxResult getFocusPos(CameraCmd cmd);
 
    //设置预置位
    AjaxResult setPreset(CameraCmd cmd);
 
    //调用预置位
    AjaxResult gotoPreset(CameraCmd cmd);
 
    //获取码流压缩参数
    Map<String, Object> getVideoCompressionCfg(CameraCmd cmd);
 
    //透雾
    AjaxResult controlDefogcfg(CameraCmd cmd);
 
    //红外
    AjaxResult controlInfrarecfg(CameraCmd cmd);
 
    //聚焦模式
    AjaxResult controlFocusMode(CameraCmd cmd);
 
    //获取聚焦模式
    AjaxResult getFocusMode(CameraCmd cmd);
 
    //云台加热
    AjaxResult controlPTHeateRpwron(CameraCmd cmd);
 
    //镜头除冰
    AjaxResult controlCameraDeicing(CameraCmd cmd);
 
    //获取云台锁定信息
    AjaxResult getPTZLockInfo(CameraCmd cmd);
 
    //本地抓图
    AjaxResult localCapture(CameraCmd cmd);
 
    //抓图
    String picCutCate(CameraCmd cmd);
    //获取ptz
    AjaxResult getPtz(CameraCmd cmd);
 
    //获取高精度PTZ
    AjaxResult getPtzHigh(CameraCmd cmd);
 
    //获取ptz范围
    AjaxResult getPtzScope(CameraCmd cmd);
 
    //设置ptz(不支持2通道的Z值设置和获取)
    AjaxResult setPtz(CameraCmd cmd);
 
    //设置ptz(高精度ptz设置)
    AjaxResult setPtzHigh(CameraCmd cmd);
 
    //设置零方位角
    AjaxResult setZeroPtz(CameraCmd cmd);
 
    //手动录像
    String record(CameraCmd cmd);
 
    //引导目标位置
    AjaxResult guideTargetPosition(CameraCmd cmd);
 
    //开始录像
    boolean recordStart(CameraCmd cmd);
 
    //停止录像-上传minio-返回录像url
    String recordStopToMinio(CameraCmd cmd);
 
    //停止录像-不上传minio
    boolean recordStopNotToMinio(CameraCmd cmd);
 
    //获取相机通道信息
    List<ArdChannel> getChannels(ArdCameras camera);
 
    //获取GIS信息数据
    AjaxResult getGisInfo(CameraCmd cmd);
 
    //本地录像开始
    AjaxResult localRecordStart(CameraCmd cmd);
 
    //本地录像停止
    AjaxResult localRecordStop(CameraCmd cmd);
 
}