用Python与欧拉积分构建终端月球着陆模拟器
2026/10/15 2:52:07
本SDK提供摄像头设备的完整控制能力,涵盖SD卡管理、云台控制、网络配置、媒体录制、告警管理等核心功能。支持异步操作、参数配置及状态查询,适用于可编程摄像头设备的开发与维护。
# 格式化SD卡(保留10%空间) result = format_sd_card(percentage=90) if result == 0: print("格式化任务已提交") else: print("格式化失败") # 查询SD卡状态 sd_status = get_sd_status() if sd_status != -1: print(f"已用空间: {sd_status['used']}%, mmc01剩余空间: {sd_status['free_mmc01']}GB")# 连接WiFi(假设密码为"12345678",加密方式为WPA2) wifi_config = { "ssid": "TP-LINK_35EB", "password": "12345678", "security": 4 # WPA2-PSK } result = connect_wifi_async(cfg_str=json.dumps(wifi_config)) if result == 0: print("WiFi连接请求已提交") # 获取当前网络参数 network_info = get_network_param() if network_info != -1: print(f"IP地址: {network_info['ip_addr']}, 信号强度: {network_info['signal_strength']}")# 设置巡航路径(预置点1和3) cruise_config = { "preset_num": 2, "preset_no": [1, 3] } result = ptz_set_cruise(cfg_str=json.dumps(cruise_config)) if result == 0: # 开启巡航模式 ptz_cruise_enable(enable=1)参数范围校验
错误处理
异步操作
云存储ID查询
JSON参数格式
如需具体接口的详细用法,请参考对应函数的文档说明。
{ "start_time": 1638400000, // long, 开始录像时间戳 "end_time": 1638400000, // long, 结束录像时间戳 "sd": 1 // int, 1=保存到SD卡, 0=保存到云端 }{ "used": 1, // int, 已用空间百分比 "total_mmc01": 102.41, // double, mmc01分区总容量(GB) "free_mmc01": 65.31, // double, mmc01分区剩余容量(GB) "total_mmc02": 256.00, // double, mmc02分区总容量(GB) "free_mmc02": 180.50, // double, mmc02分区剩余容量(GB) "total_mmc03": 0.00, // double, mmc03分区总容量(GB) "free_mmc03": 0.00, // double, mmc03分区剩余容量(GB) "total_mmc04": 0.00, // double, mmc04分区总容量(GB) "free_mmc04": 0.00, // double, mmc04分区剩余容量(GB) "diskStatus": 0 // int, 磁盘状态: 0=活动, 1=休眠, 2=不正常, 3=硬盘出错 }path(str) - 查询路径。{ "num_files": 4, // int, 文件数量 "num_directories": 5, // int, 目录数量 "files": ["all.pem", "config.txt", ...], // list[str], 文件列表 "directories": ["voice", "certs", ...] // list[str], 目录列表 }{ "pan_angle_min": -340, // int, 水平转动最小角度 "pan_angle_max": 340, // int, 水平转动最大角度 "tilt_angle_min": -60, // int, 垂直转动最小角度 "tilt_angle_max": 60, // int, 垂直转动最大角度 "speed_min": 1, // int, 最小速度 "speed_max": 3 // int, 最大速度 }{ "pan_angle": 10, // int, 水平旋转角度 "tilt_angle": 20, // int, 垂直旋转角度 "speed": 1 // int, 转动速度 }{ "preset_num": 1, // int, 预置点数量 "preset_index": [1] // list[int], 预置点索引列表 }{ "path": "/mnt/mmc02/.../pano", // str, 存储路径 "pic_name": "pano", // str, 全景图命名前缀 "type": 0 // int, 0=本地存储, 1=云端存储 }{ "preset_num": 2, // int, 预置点个数(1-4) "preset_no": [1, 2] // list[int], 预置点编号 }{ "preset_num": 2, // int, 预置点数量 "preset_no": [1, 3], // list[int], 预置点索引 "enable": 1 // int, 巡航状态: 1=开启, 0=停止 }[ { "ssid": "TP-LINK_35EB", // str, WiFi名称 "mode": 0, // int, 模式 "security": 4, // int, 加密方式: 0=不加密,1=wep,2=wpa-psk,3=wpa-Enterprise,4=wpa2-psk "channel": 161, // int, 信道 "signal_strength": 100, // int, 信号强度 "speed": 150, // int, WiFi速率(Mbps) "ap_address": "04:f9:f8:f1:35:ed", // str, AP物理地址 "rssi": -35, // int, 真实信号强度(0~-100, 0最强) "res": 0 // int, 预留字段 } ]{ "ssid": "TP-LINK_35EB", // str, WiFi名称 "password": "12345678", // str, 密码 "security": 4 // int, 加密方式(0-4) }{ "ip_addr": "XXX.XXX.3.1", // str, IP地址 "gateway": "XXX.XXX.3.1", // str, 网关地址 "pri_dns": "XXX.XXX.3.1", // str, 主DNS地址 "sec_dns": "", // str, 备用DNS地址 "ssid": "EZVIZ-11-11", // str, WiFi名称 "mode": 0, // int, 模式 "security": 4, // int, 加密方式(0-4) "channel": 161, // int, 信道 "signal_strength": 100, // int, 信号强度 "speed": 150, // int, WiFi速率(Mbps) "ap_address": "04:f9:f8:f1:35:ed" // str, AP物理地址 }{ "ip_addr": "XXX.XXX.3.1", // str, IP地址 "gateway": "XXX.XXX.3.1", // str, 网关地址 "pri_dns": "XXX.XXX.3.1", // str, 主DNS地址 "sec_dns": "XXX.XXX.3.1" // str, 备用DNS地址 }{ "type": 0, // int, 存储类型: 0=本地, 1=云端 "dest_addr": "/mnt/mmc02/.../xxx.jpg", // str, 存储路径 "resolution": 0 // int, 分辨率类型: 0=720p, 1=1080p, 2=2K }{ "stream_idx": 0, // int, 码流索引: 0=主码流, 1=子码流 "type": 0, // int, 存储类型: 0=本地, 1=云端 "pack_type": 1, // int, 封装类型: 0=ps流, 1=mp4 "dest_addr": "/mnt/mmc02/.../xxx.mp4" // str, 目标存储地址 }{ "stream_idx": 0, "type": 0, "pack_type": 1, "dest_addr": "/mnt/mmc02/.../xxx.mp4" }{ "stream_idx": 0, // int, 码流类型(必须为1) "enable": 0, // int, 使能: 0=关闭, 1=开启 "url": "rtmp://xxx.xxx.xxx.xxx/live/xxx" // str, 推流地址 }{ "type": 0, // int, 存储类型: 0=本地, 1=云存 "dest_addr": "/mnt/mmc02/.../XXXX.aac" // str, 存储地址 }{ "type": 0, "dest_addr": "/mnt/mmc02/.../XXXX.aac" }{ "/XXX/XXX1.jpg": "E1$0$11$0$PY4O4B~$N1$BF4904736-1$00$0a81", "/XXX/XXX2.jpg": "E1$0$12$0$PY4O4B~$N1$BF4904736-1$00$0a86" }{ "enable": 0, // int, 使能: 0=关闭, 1=开启, 2=自动 "level": 10 // int, 宽动态等级(0-100) }{ "enable": 1, // int, 使能状态 "level": 10 // int, 宽动态等级 }[ { "appid": "app_human_detect", // str, 告警标识 "enable": 1 // int, 开关状态: 1=开启 }, { "appid": "app_db_detect", "enable": 1 } ]{ "appid": "app_db_detect", // str, 告警标识 "enable": 1 // int, 开关状态: 1=开启 }{ "appid": "app_db_detect" // str, 告警标识 }{ "appid": "app_db_detect", "enable": 1 }[ { "app_id": "app_db_detect", // str, 告警标识 "alarm_time": 1754632006 // long, 告警时间戳 }, { "app_id": "app_human_detect", "alarm_time": 1754632010 } ]{ "channel": 1, // int, 通道(主码流) "mode": "CENTER", // str, 翻转模式(仅支持CENTER) "enable": 1 // int, 开关: 1=开启 }{ "attribute": 4, // int, OSD属性: 1=透明闪烁, 2=透明不闪烁, 3=不透明闪烁, 4=不透明不闪烁 "datetime_overlay": { "enabled": 1, // int, 开关 "clock_type": 极0, // int, 时间类型: 0=24小时制 "positionx": 576, // int, 日期横坐标 "positiony": 8732, // int, 日期纵坐标 "type": 0, // int, OSD格式类型(0-5) "display_week": 0 // int, 是否显示星期: 0=不显示 }, "channame_overlay": { "enabled": 0, // int, 开关 "positionx": 608, // int, 通道名横坐标 "positiony": 514, // int, 通道名纵坐标 "name": "Camera_BF4904736" // str, 通道名称 } }{ "attribute": 4, "bDateTimeOverlay": 1, // int, 时间OSD开关(仅设置用) "bchannelNameOverlay": 1, // int, 通道名称OSD开关(仅设置用) "datetime_overlay": { ... }, // 同get_osd_param "channame_overlay": { ... } // 同get_osd_param }{ "mic_volume": 10, // int, 麦克风音量(0-100) "speaker_volume": 50 // int, 扬声器音量(0-100) }{ "mic_volume": 10, "speaker_volume": 50 }{ "mode": 1 // int, 模式: 1=标准, 2=写实, 3=艳丽, 4=明亮 }{ "mode": 1 }{ "resolution": 1 // int, 分辨率: 0=1080P, 1=2304*1296, 2=2592*1944, 3=4064*3040 }{ "resolution": 1 }