Agent skill · creative production · affaan-m

videodb

视频与音频的查看、理解与行动。查看:从本地文件、URL、RTSP/直播源或实时录制桌面获取内容;返回实时上下文和可播放流链接。理解:提取帧,构建视觉/语义/时间索引,并通过时间戳和自动剪辑搜索片段。行动:转码和标准化(编解码器、帧率、分辨率、宽高比),执行时间线编辑(字幕、文本/图像叠加、品牌化、音频叠加、配音、翻译),生成媒体资源(图像、音频、视频),并为直播流或桌面捕获的事件创建实时警报。

Why this skill is useful

Adds executable scripts for video processing, real-time alerts, and media generation that extend the AI's capabilities significantly.

What it needs

Requires python-dotenv, videodb installed locally. Requires videodb account access. About 4k tokens when loaded. Last updated 2026-08-06. 238,342 stars on the source repository.

What this skill does

VideoDB 技能 针对视频、直播流和桌面会话的感知 + 记忆 + 操作。 使用场景 桌面感知 启动/停止桌面会话,捕获屏幕、麦克风和系统音频 流式传输实时上下文并存储片段式会话记忆 对所说的内容和屏幕上发生的事情运行实时警报/触发器 生成会话摘要、可搜索的时间线和可播放的证据链接 视频摄取 + 流 摄取文件或URL并返回可播放的网络流链接 转码/标准化:编解码器、比特率、帧率、分辨率、宽高比 索引 + 搜索(时间戳 + 证据) 构建视觉、语音和关键词索引 搜索并返回带有时间戳和可播放证据的精确时刻 从搜索结果自动创建片段 时间线编辑 + 生成 字幕:生成、翻译、烧录 叠加层:文本/图片/品牌标识,动态字幕 音频:背景音乐、画外音、配音 通过时间线操作进行程序化合成和导出 直播流(RTSP)+ 监控 连接RTSP/实时流 运行实时视觉和语音理解,并为监控工作流发出事件/警报 工作原理 常见输入 本地文件路径、公共URL或RTSP URL 桌面捕获请求:启动 / 停止 / 总结会话 期望的操作:获取理解上下文、转码规格、索引规格、搜索查询、片段范围、时间线编辑、警报规则 常见输出 流URL 带有时间戳和证据链接的搜索结果 生成的资产:字幕、音频、图片、片段 用于直播流的事件/警报负载 桌面会话摘要和记忆条目 运行 Python 代码 在运行任何 VideoDB 代码之前,请切换到项目目录并加载环境变量: 这会从以下位置读取 VIDEODBAPIKEY: 1. 环境变量(如果已导出) 2. 项目当前目录中的 .env 文件 如果密钥缺失,videodb.connect() 会自动引发 AuthenticationError。 当简短的內联命令有效时,不要编写脚本文件。 编写內联 Python (python -c "...") 时,始终使用格式正确的代码——使用分号分隔语句并保持可读性。对于任何超过约3条语句的内容,请改用 heredoc: 设置 当用户要求“设置 videodb”或类似操作时: 1. 安装 SDK 如果在 Linux 上 videodb[capture] 失败,请安装不带捕获扩展的版本: 2. 配置 API 密钥 用户必须使用任一方法设置 VIDEODBAPIKEY: 在终端中导出(在启动 Claude 之前):export VIDEODBAPIKEY=your-key 项目 .env 文件:将 VIDEODBAPIKEY=your-key 保存在项目的 .env 文件中 免费获取 API 密钥,请访问 console.videodb.io(50 次免费上传,无需信用卡)。 请勿自行读取、写入或处理 API 密钥。始终让用户设置。 快速参考 上传媒体 转录 + 字幕 在视频内搜索 场景搜索 时间线编辑 重要提示: 在构建时间线之前,请务必验证时间戳: start 必须 >= 0(负值会被静默接受,但会产生损坏的输出) start 必须 < end end 必须 <= video.length 转码视频(分辨率 / 质量更改) 调整宽高比(适用于社交平台) 警告: reframe() 是一项缓慢的服务器端操作。对于长视频,可能需要几分钟,并可能超时。最佳实践: 尽可能使用 start/end 限制为短片段 对于全长视频,使用 callbackurl 进行异步处理 先在 Timeline 上修剪视频,然后调整较短结果的宽高比 生成式媒体 错误处理 常见问题 场景 错误信息 解决方案 ---------- -------------- ---------- 为已索引的视频建立索引 Spoken word index for video already exists 使用 video.indexspokenwords(force=True) 跳过已索引的情况 场景索引已存在 Scene index with id XXXX already exists 使用 re.search(r"id\s+([a-f0-9]+)", str(e)) 从错误中提取现有的 sceneindexid 搜索无匹配项 InvalidRequestError: No results found 捕获异常并视为空结果 (shots = []) 调整宽高比超时 长视频上无限期阻塞 使用 start/end 限制片段,或传递 callbackurl 进行异步处理 Timeline 上的负时间戳 静默产生损坏的流 在创建 VideoAsset 之前,始终验证 start >= 0 generatevideo() / createcollection() 失败 Operation not allowed 或 maximum limit 计划限制的功能—— …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills affaan-m/videodb--cbbff0

View the source on GitHub

Browse the @skills marketplace