Add VideoDB Skills to Individual Skills

This commit is contained in:
Rohit Garg
2026-02-27 22:13:59 +05:30
parent b3d3eac532
commit c26ba60003

View File

@@ -0,0 +1,109 @@
---
name: videodb-skills
description: The only video skill your agent needs — upload any video, connect real-time streams, search inside by what was said or shown, build complex editing workflows with overlays, generate AI media, add subtitles, and get instant streaming links.
origin: ECC
---
# VideoDB Skills
The only video skill your agent needs. Upload any video, connect real-time streams, search inside by what was said or shown, build complex editing workflows with overlays, generate AI media, add subtitles, and get instant streaming links — all via the VideoDB Python SDK.
## When to Activate
- Uploading or ingesting videos from YouTube URLs, web URLs, or local files
- Searching spoken words or visual scenes across video content
- Generating transcripts or auto-styling subtitles
- Editing clips — trim, combine, multi-timeline composition
- Adding overlays — text, images, audio, music
- Generating AI media — images, video, music, sound effects, voiceovers
- Transcoding — resolution, codec, bitrate, FPS changes
- Reframing video for social platforms (vertical, square, etc.)
- Real-time screen or audio capture with AI transcription
- Getting playable HLS streaming links for any output
## Setup
```bash
# Install the skill
npx skills add video-db/skills
# Or setup manually
pip install "videodb[capture]" python-dotenv
export VIDEO_DB_API_KEY=sk-xxx
```
Run `/videodb setup` inside your agent for guided setup ($20 free credits, no credit card).
## Core Patterns
### Upload and Process
```python
import videodb
conn = videodb.connect()
video = conn.upload(url="https://www.youtube.com/watch?v=VIDEO_ID")
transcript = video.get_transcript()
for entry in transcript:
print(f"[{entry['start']:.1f}s] {entry['text']}")
```
### Search Across Videos
```python
# Index for semantic search
video.index_spoken_words()
# Search by what was said
results = video.search("product demo")
for r in results:
print(f"{r.start:.1f}s - {r.end:.1f}s: {r.text}")
```
### Timeline Editing
```python
from videodb import Timeline, VideoAsset, AudioAsset
timeline = Timeline(conn)
asset = VideoAsset(asset_id=video.id, start=10, end=30)
timeline.add_inline(asset)
stream = timeline.generate_stream()
print(stream) # Playable HLS link
```
### AI Media Generation
```python
audio = conn.generate_audio(text="Upbeat background music", duration=30)
image = conn.generate_image(prompt="Title card: Welcome to the Demo")
```
## Capabilities
| Capability | What It Does |
|---|---|
| Upload | YouTube, URLs, local files |
| Search | Speech-based and scene-based |
| Transcripts | Timestamped, multi-language |
| Edit | Trim, combine, multi-timeline |
| Subtitles | Auto-generate, custom styling |
| AI Generate | Images, video, music, SFX, voiceover |
| Capture | Screen + audio, real-time |
| Transcode | Resolution, codec, aspect ratio |
| Stream | HLS playable links |
## Best Practices
- Always verify SDK connection before operations: `conn.get_collection()`
- Use `video.index_spoken_words()` before searching — indexing is required once per video
- For scene search, use `video.index_scenes()` — this processes visual frames
- Timeline edits produce new streams; the original video is never modified
- AI generation is async — poll status or use callbacks for long operations
- Store `VIDEO_DB_API_KEY` in `.env`, not hardcoded
## Repository
https://github.com/video-db/skills