videodb

Ingest, index, search, and edit video and live streams using the VideoDB Python SDK.

Updated Mar 25, 2026
One-click install
npx skills add https://github.com/Femad-6/my-skills --skill videodb-femad-6
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: videodb
Source: https://github.com/Femad-6/my-skills/tree/main/.github/skills/videodb
Command: npx skills add https://github.com/Femad-6/my-skills --skill videodb-femad-6

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires videodb, python-dotenv, and includes scripts (resource) and references (resource) components.

What problem does it solve? Working with video programmatically—transcribing, searching for specific moments, editing timelines, transcoding formats, and monitoring live streams—normally requires juggling ffmpeg, local encoders, and custom pipelines. This Skill provides a unified server-side workflow for video perception, search, editing, and real-time alerting through the VideoDB API. ## Core Features & Use Cases - Video Ingest & Search: Upload files, URLs, or YouTube links; index spoken words and visual scenes; search for exact moments with timestamps and auto-compile clips. - Timeline Editing & Transcoding: Trim and combine clips, add subtitles, text/image/audio overlays, dubbing, and reframe aspect ratios (vertical, square) server-side without ffmpeg. - Live Streams & Desktop Capture: Connect RTSP/RTMP feeds or record macOS desktop sessions with real-time transcription, visual indexing, and event-based alerts. - Use Case: Ingest a recorded webinar, index its spoken content, search for "pricing discussion", compile matching moments into a highlight clip, burn in subtitles, and reframe it to vertical format for social media. ## Quick Start Ask the assistant to ingest a video file or URL with VideoDB, index its spoken words, and return a playable stream link with search results for a topic you specify.

Frequently Asked Questions about videodb

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I search inside a video for specific moments with Python?

Use the VideoDB SDK: upload the video, call video.index_spoken_words(force=True), then video.search(query) to get matching shots with timestamps. Wrap the search in try/except because it raises InvalidRequestError when no results are found.

How to add subtitles to a video without ffmpeg?

VideoDB burns subtitles server-side. Index spoken words on the video first, then call video.add_subtitle() to get a stream URL with subtitles embedded. You can customize styling with SubtitleStyle parameters like font size and color.

Does VideoDB desktop capture work on Windows or Linux?

No, desktop capture currently supports macOS only. The CaptureClient records screen, microphone, and system audio on macOS, streaming events over WebSocket. For other platforms, use RTSP/RTMP live stream ingestion instead.

Why does video.search() raise InvalidRequestError: No results found?

This exception is raised whenever a search returns zero matches; it is expected behavior, not a failure. Catch InvalidRequestError, check for the "No results found" message, and treat it as an empty result set.

What video editing operations are not supported by VideoDB timelines?

The timeline editor does not support transitions, speed changes, crop/zoom, color grading, volume mixing, picture-in-picture video, or keyframe animation. For those operations you must fall back to local tools like ffmpeg or moviepy.

How do I convert a video to vertical format for TikTok or Instagram?

Call video.reframe(start=0, end=60, target="vertical") for a 9:16 conversion, preferably on a short segment since reframe is slow. For full-length videos, pass a callback_url for asynchronous processing to avoid timeouts.