c-video-edit
Über
c-video-edit ermöglicht die programmatische Videoproduktion entweder mit Remotion für React-basierte dynamische Videos oder mit Editly für schnelle JSON-basierte Zusammenstellung. Es erlaubt Entwicklern, Videos direkt aus Code heraus zu erstellen, zu rendern und zu komponieren. Nutzen Sie diese Fähigkeit, wenn Sie Videos programmatisch generieren müssen, beispielsweise für dynamische Inhalte, Datenvisualisierungen oder automatisierte Schnitte.
Schnellinstallation
Claude Code
Empfohlennpx skills add daxaur/openpaw -a claude-code/plugin add https://github.com/daxaur/openpawgit clone https://github.com/daxaur/openpaw.git ~/.claude/skills/c-video-editKopieren Sie diesen Befehl und fügen Sie ihn in Claude Code ein, um diese Fähigkeit zu installieren
Dokumentation
Video Editing — Remotion & Editly
Create, render, and compose videos programmatically. Use Remotion for React-based dynamic videos or Editly for quick JSON-based assembly.
Remotion (React-based video creation)
Project Setup
# Create a new Remotion project
npx create-video@latest my-video
cd my-video
# Start interactive studio
npx remotion studio
Rendering
# Render a composition to video
npx remotion render src/index.ts MyComposition out/video.mp4
# Render a still frame (thumbnail)
npx remotion still src/index.ts MyComposition out/thumbnail.png --frame=30
# List available compositions
npx remotion compositions src/index.ts
Render Options
# Resolution and FPS
npx remotion render src/index.ts MyComp out.mp4 --width 1920 --height 1080 --fps 30
# Codec (h264, h265, vp8, vp9, prores)
npx remotion render src/index.ts MyComp out.mp4 --codec h264
# Quality (CRF 0-51, lower = better)
npx remotion render src/index.ts MyComp out.mp4 --crf 18
# Speed preset
npx remotion render src/index.ts MyComp out.mp4 --x264-preset fast
# Pass data as props
npx remotion render src/index.ts MyComp out.mp4 --props='{"title":"Hello","color":"blue"}'
# Parallel rendering (faster)
npx remotion render src/index.ts MyComp out.mp4 --concurrency 4
# Benchmark render time
npx remotion benchmark src/index.ts MyComp
Composition Structure
// src/Root.tsx — register compositions
import { Composition } from "remotion";
import { MyVideo } from "./MyVideo";
export const RemotionRoot = () => (
<Composition id="MyVideo" component={MyVideo}
durationInFrames={150} fps={30} width={1920} height={1080} />
);
// src/MyVideo.tsx — video content
import { useCurrentFrame, interpolate, AbsoluteFill, Sequence } from "remotion";
export const MyVideo = () => {
const frame = useCurrentFrame();
const opacity = interpolate(frame, [0, 30], [0, 1]);
return (
<AbsoluteFill style={{ backgroundColor: "black" }}>
<Sequence from={0} durationInFrames={60}>
<h1 style={{ color: "white", opacity }}>Hello World</h1>
</Sequence>
</AbsoluteFill>
);
};
Editly (JSON-based declarative editing)
Quick Assembly
# Simple concatenation with titles
editly title:'Intro' clip1.mov clip2.mov title:'THE END' --out output.mp4
# From JSON spec
editly spec.json5 --fast --out output.mp4
# Add background music
editly spec.json5 --audio-file-path music.mp3 --out output.mp4
JSON Spec Format
{
"width": 1920,
"height": 1080,
"fps": 30,
"outPath": "output.mp4",
"defaults": {
"duration": 4,
"transition": { "name": "fade", "duration": 0.5 }
},
"clips": [
{
"duration": 3,
"layers": [{ "type": "title-background", "text": "My Video", "background": { "type": "linear-gradient" } }]
},
{
"layers": [{ "type": "video", "path": "clip1.mp4", "cutFrom": 0, "cutTo": 10 }]
},
{
"layers": [
{ "type": "image", "path": "photo.jpg" },
{ "type": "title", "text": "Caption", "position": "bottom" }
]
}
],
"audioFilePath": "background.mp3",
"keepSourceAudio": false
}
Layer Types
video— video clip (cutFrom/cutTo for trimming)audio— audio trackimage— static imagetitle-background— full-screen title card with backgroundtitle— text overlaysubtitle— subtitle textgl— WebGL shader transition/effect
Guidelines
- Remotion — best for complex, data-driven, animated videos (dashboards, branded content, social media)
- Editly — best for quick assembly (concatenation, transitions, title cards, slideshows)
- Both require
ffmpeg(installed automatically with this skill) - Remotion renders can be CPU-intensive — warn user about duration for long compositions
- Always confirm output path before rendering to avoid overwriting
- Use
--fastflag with Editly for quick previews before final render
GitHub Repository
Verwandte Skills
content-collections
MetaDiese Skill bietet eine produktionsgetestete Einrichtung für Content Collections – ein TypeScript-first-Tool, das Markdown/MDX-Dateien in typsichere Datensammlungen mit Zod-Validierung umwandelt. Verwenden Sie ihn beim Erstellen von Blogs, Dokumentationsseiten oder inhaltsstarken Vite + React-Anwendungen, um Typsicherheit und automatische Inhaltsvalidierung zu gewährleisten. Er behandelt alles von der Vite-Plugin-Konfiguration und MDX-Kompilierung bis hin zur Deployment-Optimierung und Schema-Validierung.
polymarket
MetaDiese Fähigkeit ermöglicht es Entwicklern, Anwendungen mit der Polymarket-Prognosemärkte-Plattform zu erstellen, einschließlich API-Integration für Handel und Marktdaten. Sie bietet außerdem Echtzeit-Datenstreaming über WebSocket, um Live-Trades und Marktaktivitäten zu überwachen. Nutzen Sie sie zur Implementierung von Handelsstrategien oder zur Erstellung von Tools, die Live-Marktaktualisierungen verarbeiten.
creating-opencode-plugins
MetaDiese Fähigkeit unterstützt Entwickler dabei, OpenCode-Plugins zu erstellen, die in über 25 Ereignistypen wie Befehle, Dateien und LSP-Operationen eingreifen. Sie bietet die Plugin-Struktur, Event-API-Spezifikationen und Implementierungsmuster für JavaScript/TypeScript-Module. Nutzen Sie sie, wenn Sie den Lebenszyklus des OpenCode KI-Assistenten mit benutzerdefinierter ereignisgesteuerter Logik abfangen, überwachen oder erweitern müssen.
sglang
MetaSGLang ist ein hochperformantes LLM-Serving-Framework, das sich auf schnelle, strukturierte Generierung für JSON, Regex und agentenbasierte Workflows unter Verwendung seines RadixAttention-Prefix-Cachings spezialisiert. Es bietet deutlich schnellere Inferenz, insbesondere für Aufgaben mit wiederholten Präfixen, was es ideal für komplexe, strukturierte Ausgaben und Mehrfachdialoge macht. Wählen Sie SGLang gegenüber Alternativen wie vLLM, wenn Sie constrained decoding benötigen oder Anwendungen mit umfangreicher Präfix-Weitergabe entwickeln.
