Video Perception

Driver en ffmpeg MCP-server så att Claude läser videobilder och tidsstämplade transkriptioner

av jordanrendric · jordanrendric/claude-video-vision

Fungerar med konfiguration ★ 6.8/10

Video Perception — Driver en ffmpeg MCP-server så att Claude läser videobilder och tidsstämplade transkriptioner

Vad den gör

Kopplar Claude Code till claude-video-vision MCP-servern så att den kan läsa lokala videofiler (.mp4, .mov, .mkv, .webm) och YouTube-URL:er som bildrutor plus tidsstämplad ljudtranskription. Färdigheten föreskriver ett arbetsflöde: hämta metadata, kör ffmpeg strukturell analys (scenbyten, tystnadsintervall, rörelse) innan några rutor extraheras, dra sedan rutor med adaptiv FPS runt de viktiga ögonblicken. Utlöses när en videofilssökväg, en YouTube-länk, eller en begäran om att titta på, granska eller sammanfatta en video visas i konversationen.

Testrapport

Jag installerade claude-video-vision@1.3.2 från npm i en sandlådad HOME, drev MCP-servern över stdio JSON-RPC, och bekräftade att alla sex verktyg svarade, genererade sedan en 3-minuters testvideo med fyra märkta kapitel och en 1-sekunds "ERROR CODE 7742"-blixt vid 01:37. BASLINJE (naiv video_watch, fps auto): 100 rutor / 487KB bilder; den fångade blixten vid 00:01:37 men nådde tyst max_frames=100 och extraherade aldrig de sista 41 sekunderna av videon. FÄRDIGHETSKÖRNING (video_info sedan video_analyze sedan en planerad segmentextraktion): video_analyze returnerade den exakta klipplistan 00:00:45, 00:01:30, 00:01:37, 00:01:38, 00:02:15 plus tystnadsintervallet 00:00:45-00:01:30 för noll bildtokens — inklusive klippet 02:15 som baslinjen aldrig såg — men den föreskrivna segmentextraktionen returnerade endast 34KB rutor märkta 00:00:10, 00:01:48, 00:01:41, 00:02:21, 00:02:34 och 00:03:54 (förbi 3:00-varaktigheten) och missade felblixten helt. Grundorsaken jag läste i dist/extractors/frames.js: -ss skickas före -i medan -to skickas efter, så varje fönsterförfrågan körs till EOF; jag reproducerade det på video_watch-segment, video_watch start_time/end_time, och video_detail i en ren HOME. Transkription returnerar också en tom array utan varning när ingen whisper/API-backend är konfigurerad.

Testad: 2026-07-21 · Claude Code 2.x (agent harness)

Installation

git clone --depth 1 https://github.com/jordanrendric/claude-video-vision.git /tmp/video-perception-src
mkdir -p ~/.claude/skills
cp -R /tmp/video-perception-src/skills/video-perception ~/.claude/skills/video-perception
# The skill is only guidance — it is USELESS without the MCP server that provides
# video_info / video_analyze / video_watch / video_detail / video_configure / video_setup.
#
# Register the MCP server (needs Node 20+ and ffmpeg on PATH):
#   claude mcp add claude-video-vision -- npx -y claude-video-vision@latest
#
# Or install the whole plugin instead of this skill, inside Claude Code, one at a time:
#   /plugin marketplace add https://github.com/jordanrendric/claude-video-vision
#   /plugin install claude-video-vision
#   /setup-video-vision
#
# Required deps:
#   brew install ffmpeg            # frame extraction (mandatory)
#   brew install yt-dlp            # only for YouTube URLs
# Audio transcription needs a backend, otherwise transcription silently returns []:
#   export GEMINI_API_KEY=...      # free tier, backend "gemini-api"
#   brew install whisper-cpp       # fully local, backend "local"
#   export OPENAI_API_KEY=...      # paid, backend "openai"
# Config lives at ~/.claude-video-vision/config.json (set via the video_configure tool).
#
# Known defect in the published v1.3.2 server: any time-bounded request over-extracts.
# ffmpeg is called with -ss before -i but -to after -i, so asking for 01:36-01:39
# returns ~100 frames spanning 01:36-02:25. Prefer whole-video video_watch and lean on
# video_analyze for timestamps until this is fixed.

Kommandon och exempelprompter

  • /video-perceptionDriver en ffmpeg MCP-server så att Claude läser videobilder och tidsstämplade transkriptioner

Skills triggas av vanliga förfrågningar — inga kommandon att memorera. Efter installationen aktiverar prompter som dessa skillen (på engelska):

  • Watch this video and summarize what happens
  • Analyze this YouTube link for key moments
  • Review this MP4 and describe the scenes