返回顶部
l

linux-cameraLinux摄像头

Capture photos, record video clips, list cameras, and live stream on Linux. Uses V4L2 and ffmpeg. Supports USB webcams and RTSP/IP cameras.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
385
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

linux-camera

Linux 摄像头技能

适用于Linux系统的摄像头捕获技能。支持USB摄像头(V4L2)和网络摄像头(RTSP)。

技能目录: ~/.openclaw/workspace/skills/linux-camera/

依赖项

bash
sudo apt-get install -y ffmpeg v4l-utils

脚本

0. 快速拍照(camera_photo.py)— 最简单的拍照方式

无需任何标志参数,直接运行即可。

bash
uv run python scripts/camera_photo.py # 自动检测摄像头,文件名带时间戳
uv run python scripts/camera_photo.py front # 使用 /dev/video0
uv run python scripts/camera_photo.py back # 使用 /dev/video2
uv run python scripts/camera_photo.py front pic.jpg # 自定义文件名 → /tmp/pic.jpg
uv run python scripts/camera_photo.py /dev/video4 # 显式指定设备路径

摄像头别名:front = /dev/video0,back = /dev/video2。输出文件默认保存到 /tmp/ 目录。

1. 列出可用摄像头(camera_list.py)

检测所有V4L2视频设备,并打印其名称、路径和支持的格式。

bash
uv run python scripts/camera_list.py

参数描述默认值
--json以JSON格式输出关闭

2. 拍摄快照(camera_snap.py)— 主要推荐方式

从摄像头捕获单帧图像并保存为JPEG格式。

bash
uv run python scripts/camera_snap.py --output /tmp/snapshot.jpg

参数描述默认值
--deviceV4L2设备路径/dev/video0
--rtsp
RTSP URL(用于IP摄像头,替代--device) | — | | --output | 输出文件路径 | /tmp/camera_snap.jpg | | --width | 捕获宽度 | 1280 | | --height | 捕获高度 | 720 | | --warmup | 预热帧数(用于曝光调整) | 5 | | --quality | JPEG质量(1–100) | 90 |

3. 录制视频片段(camera_clip.py)

从摄像头录制视频片段。

bash
uv run python scripts/camera_clip.py --duration 5 --output /tmp/clip.mp4

参数描述默认值
--deviceV4L2设备路径/dev/video0
--rtsp
RTSP URL(用于IP摄像头,替代--device) | — | | --output | 输出文件路径 | /tmp/camera_clip.mp4 | | --duration | 录制时长(秒) | 5 | | --width | 捕获宽度 | 1280 | | --height | 捕获高度 | 720 | | --fps | 每秒帧数 | 30 |

4. 实时推流(camera_stream.py)

多格式实时推流服务器。支持MJPEG(低延迟)、HLS(自适应、移动端友好)和RTSP重新推流。

bash
uv run python scripts/camera_stream.py --port 8090

在浏览器中打开 http://<设备IP>:8090 即可查看MJPEG流。

参数描述默认值
--deviceV4L2设备路径/dev/video0
--rtsp
RTSP输入URL(用于IP摄像头,替代--device) | — |
| --port | HTTP服务器端口 | 8090 |
| --width | 捕获宽度 | 640 |
| --height | 捕获高度 | 480 |
| --fps | 目标每秒帧数 | 15 |
| --enable-hls | 启用HLS输出(自适应码率、移动端友好) | 关闭 |
| --enable-rtsp | 启用RTSP重新推流输出 | 关闭 |
| --rtsp-port | RTSP服务器端口(使用--enable-rtsp时) | 8554 |

端点地址:

URL描述
http://<ip>:8090/MJPEG流(可在<img>标签和浏览器中使用)
http://<ip>:8090/snap
单张JPEG快照 |
| http://:8090/hls | HLS直播页面(需要--enable-hls) |
| http://:8090/hls/stream.m3u8 | 供VLC或移动播放器使用的HLS播放列表 |
| rtsp://:8554/live | RTSP流(需要--enable-rtsp) |
| http://:8090/status | JSON状态信息(帧龄、尺寸、活跃输出) |

示例

bash

列出摄像头


uv run python scripts/camera_list.py

从默认摄像头拍摄快照

uv run python scripts/camera_snap.py

从指定摄像头拍摄快照

uv run python scripts/camera_snap.py --device /dev/video2 --output /tmp/photo.jpg

从IP摄像头拍摄快照

uv run python scripts/camera_snap.py --rtsp rtsp://user:pass@192.168.1.100:554/stream1

录制10秒视频

uv run python scripts/camera_clip.py --duration 10

MJPEG推流(低延迟,在浏览器中查看)

uv run python scripts/camera_stream.py --port 8090

MJPEG + HLS推流(自适应码率,适合移动/远程设备)

uv run python scripts/camera_stream.py --port 8090 --enable-hls

完整推流:MJPEG + HLS + RTSP重新推流

uv run python scripts/camera_stream.py --port 8090 --enable-hls --enable-rtsp

以IP摄像头作为输入源进行推流

uv run python scripts/camera_stream.py --rtsp rtsp://user:pass@192.168.1.100:554/stream1 --enable-hls

30fps高分辨率推流

uv run python scripts/camera_stream.py --width 1280 --height 720 --fps 30

多摄像头支持

如果您有多个摄像头(例如 /dev/video0 和 /dev/video2),请指定设备:

bash

列出所有摄像头


uv run python scripts/camera_list.py

从摄像头0拍摄快照

uv run python scripts/camera_snap.py --device /dev/video0 --output /tmp/cam0.jpg

从摄像头2拍摄快照

uv run python scripts/camera_snap.py --device /dev/video2 --output /tmp/cam2.jpg

在端口8090推流摄像头0,在端口8091推流摄像头2

uv run python scripts/camera_stream.py --device /dev/video0 --port 8090 uv run python scripts/camera_stream.py --device /dev/video2 --port 8091

与机械臂协同

结合 soarm-control 技能,可以控制机械臂观察某处并拍照:

bash

移动机械臂观察桌面


uv run python ~/.openclaw/workspace/skills/soarm-control/scripts/soarmsetjoints.py \
--shoulder-pan 1.626 --shoulder-lift -42.110 --elbow-flex 32.088 \
--wrist-flex 78.242 --wrist-roll -95.077

捕获摄像头看到的画面

uv run python scripts/camera_snap.py --output /tmp/desktop.jpg

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 linux-camera-1776180081 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 linux-camera-1776180081 技能

通过命令行安装

skillhub install linux-camera-1776180081

下载

⬇ 下载 linux-camera v1.0.0(免费)

文件大小: 11.42 KB | 发布时间: 2026-4-15 12:10

v1.0.0 最新 2026-4-15 12:10
Initial release of linux-camera skill.

- Capture photos, record video clips, and live stream from USB webcams (V4L2) or IP/RTSP cameras on Linux.
- Includes scripts to quickly take photos, list available cameras, capture high-quality snapshots, and record video clips.
- Live streaming supports MJPEG (web), HLS (adaptive/mobile), and RTSP re-streaming with a built-in server.
- Flexible command-line parameters for device selection, resolution, formats, and outputs.
- Integrates easily with other robot skills for automated use cases.
- Simple installation; uses ffmpeg and v4l-utils.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部