Tool v1.0.0

ipcam

ONVIF PTZ控制 + RTSP采集 + 摄像头发现。支持任何ONVIF Profile S/T摄像头。已测试TP-Link、海康威视、大华、睿创、Amcrest、Axis等品牌

ClawHub 更新于 2026-03-25 15 浏览
下载 SKILL

技能说明

ONVIF PTZ控制 + RTSP采集 + 摄像头发现。支持任何ONVIF Profile S/T摄像头。已测试TP-Link、海康威视、大华、睿创、Amcrest、Axis等品牌

使用场景

Controls PTZ and captures RTSP video from any ONVIF Profile S/T camera, tested with major brands.

查看英文原始说明

ONVIF PTZ control + RTSP capture + camera discovery. Works with any ONVIF Profile S/T camera. Tested with TP-Link, Hikvision, Dahua, Reolink, Amcrest, Axis.

直接复制以下提示词,发送给你的 AI 助手即可完成安装。

帮我下载并安装这个SKILL:https://skillhub.cstcloud.cn/download/ipcam
  1. 点击上方「下载 SKILL」按钮,获取技能压缩包。
  2. 将压缩包解压到你的 Agent 技能目录。
  3. 重启客户端后即可在技能列表中选择该技能。

技能文件内容

8 个文件 · 52 kB
SKILL.md text/markdown
---
name: ipcam
title: "IP Camera - RTSP & ONVIF Control"
description: "ONVIF PTZ control + RTSP capture + camera discovery. Works with any ONVIF Profile S/T camera. Tested with TP-Link, Hikvision, Dahua, Reolink, Amcrest, Axis."
metadata:
  openclaw:
    emoji: "📹"
    version: "1.0.0"
    author: "tao"
    requires:
      bins: ["ffmpeg", "python3", "jq"]
      pip: ["onvif-zeep"]
    install:
      - id: "auto"
        kind: "script"
        label: "Run install.sh"
        instructions: "bash install.sh"
---

# IP Camera Skill

Control IP cameras via **RTSP** (snapshots, recording) and **ONVIF** (PTZ, presets, discovery).

Tested with TP-Link Tapo/Vigi. Works with Hikvision, Dahua, Reolink, Amcrest, Axis, and other ONVIF Profile S/T cameras.

## Setup

```bash
bash skills/ipcam/install.sh
```

Then either discover cameras automatically or configure manually:

```bash
# Auto-discover and add
ptz.py discover --add

# Or edit config
nano ~/.config/ipcam/config.json
```

### Config Format

```json
{
  "default": "front-door",
  "cameras": {
    "front-door": {
      "ip": "192.168.1.100",
      "username": "admin",
      "password": "secret",
      "rtsp_port": 554,
      "onvif_port": 2020,
      "rtsp_main_path": "stream1",
      "rtsp_sub_path": "stream2"
    }
  }
}
```

- `onvif_port`: 2020 (TP-Link), 80 (Hikvision/Dahua), 8000, 8080
- `rtsp_main_path` / `rtsp_sub_path`: auto-detect with `ptz.py stream-uri --save`
- Env overrides: `CAM_IP`, `CAM_USER`, `CAM_PASS`, `CAM_RTSP_PORT`, `CAM_ONVIF_PORT`

## Usage

### RTSP (`camera.sh`)

```bash
camera.sh snapshot                         # capture frame
camera.sh --cam cam2 snapshot /tmp/cam.jpg # specific camera
camera.sh record 15                        # record 15s clip
camera.sh stream-url sub                   # print sub-stream URL
camera.sh info                             # test connectivity
camera.sh list-cameras                     # list configured cameras
```

### PTZ (`ptz.py`)

```bash
ptz.py status                     # current position
ptz.py move left                  # pan left (speed 0.5, 0.5s)
ptz.py move zoomin 0.8 1.0        # zoom in, speed 0.8, 1s
ptz.py goto 0.5 -0.2 0.0          # absolute pan/tilt/zoom
ptz.py home                       # home position
ptz.py stop                       # stop movement
ptz.py preset list                # list presets
ptz.py preset goto 1              # go to preset 1
ptz.py preset set 2 "Door"        # save current pos as preset
```

### Discovery & Stream URI

```bash
ptz.py discover                   # scan network for ONVIF cameras
ptz.py discover --add             # scan and add to config
ptz.py stream-uri                 # query RTSP paths from ONVIF
ptz.py stream-uri --save          # save paths to config
```

Multi-camera: use `--cam <name>` with any command.

### Directions

`left`, `right`, `up`, `down`, `zoomin`, `zoomout`, `upleft`, `upright`, `downleft`, `downright`

## Troubleshooting

- **RTSP fails**: Check IP/port/firewall. Use `ptz.py stream-uri` to verify paths. Camera may limit concurrent RTSP connections (try closing other viewers).
- **ONVIF fails**: Verify ONVIF port and that ONVIF is enabled in camera web UI. Try common ports: 2020, 80, 8000, 8080.
- **No cameras found**: Ensure same subnet, ONVIF enabled, UDP multicast not blocked.
- **PTZ not working**: Not all cameras support PTZ. Check ONVIF Profile S support.
- **Auth error**: Check username/password. Special characters are URL-encoded automatically.

文件内容直接读取自技能仓库,仅供安装前审阅;以实际下载的压缩包为准。