video-processing-editing
FFmpeg automation for cutting, trimming, concatenating videos. Audio mixing, timeline editing, transitions, effects. Export optimization for YouTube, social media. Subtitle handling, color grading, batch processing. Use for videogen projects, content creation, automated video production. Activate on
By curiositech · 1,256 installs
npx skills add curiositech/some_claude_skills --skill video-processing-editing
Source repository · Upstream listing
Video Processing & Editing
Expert in FFmpeg based video editing, processing automation, and export optimization for modern content creation workflows.
When to Use
✅ Use for :
Automated video editing pipelines (script to video)
Cutting, trimming, concatenating clips
Adding transitions, effects, overlays
Audio mixing and normalization
Subtitle/caption handling
Export optimization for platforms
Batch video processing
Color grading and correction
❌ NOT for :
Real time video editing UI (use DaVinci Resolve/Premiere)
3D compositing (use After Effects/Blender)
Motion graphics animation (use After Effects)
Basic screen recording (use OBS)
Technology Selection
Video Editing Tools
Tool Speed Features Use Case
FFmpeg Very Fast CLI automation Production pipelines
MoviePy Medium Python API Programmatic editing
PyAV Fast Low level control Custom processing
DaVinci Resolve Slow Full NLE Manual editing
Decision tree :
Common Anti Patterns
Anti Pattern 1: Not Using Keyframe Aligned Cuts
Novice thinking : "Just cut the video at any timestamp"
Problem : Causes artifacts, black frames, and playback issues.
Wrong approach :
Why wrong :
Video codecs use keyframes (I frames) every 2 10 seconds
Non keyframe cuts require re encoding
Using c copy (stream copy) without keyframe alignment breaks playback
GOP (Group of Pictures) structure depends on keyframes
Correct approach 1 : Re encode for precise cuts
Correct approach 2 : Keyframe aligned stream copy
Correct approach 3 : Two pass for best of both worlds
Performance comparison :
Method Time (1 hour video) Accuracy Quality
Stream copy (arbitrary) 2s ❌ Broken ❌ Artifacts
Stream copy (keyframe) 2s ±2s ✅ Perfect
Re encode (simple) 15min ✅ Frame ⚠️ Quality loss
Two pass (optimal) 3min ✅ Frame ✅ Perfect
Timeline context :
2010: FFmpeg required full re encoding for cuts
2015: c copy added for stream copying
2020: Two pass cutting became best practice
2024: Hardware acceleration (NVENC) makes re encoding viable
Anti Pattern 2: Re encoding Unnecessarily
Novice thinking : "Apply all edits in one FFmpeg command"
Problem : Multiple re encodings cause cumulative quality loss.
Wrong approach :
Why wrong :
Each re encode is lossy (even with high CRF)
Cumulative quality loss (generation loss)
3x encoding time
Wasted disk I/O
Correct approach 1 : Chain operations in single command
Correct approach 2 : Use stream copy when possible
Quality comparison :
Method Encoding Passes Quality (VMAF) Time
3x re encode (CRF 23) 3 82/100 45min
Single pass (CRF 23) 1 91/100 15min
Stream copy + 1 encode 1 95/100 18min
All stream copy 0 100/100 30s
Anti Pattern 3: Ignoring Color Space Conversions
Novice thinking : "Just concatenate videos together"
Problem : Color shifts, mismatched brightness, broken playback.
Wrong approach :
Why wrong :
Different color spaces (BT.601 vs BT.709 vs BT.2020)
Different pixel formats (yuv420p vs yuvj420p)
Different color ranges (limited vs full)
Metadata conflicts
Correct approach :
Color space guide :
Standard Color Space Transfer Primaries Use Case
BT.601 SD bt470bg bt470bg Old SD content
BT.709 HD bt709 bt709 Modern HD/FHD
BT.2020 UHD/HDR smpte2084 bt2020 4K HDR
sRGB Web iec61966 2 1 bt709 Web delivery
Anti Pattern 4: Poor Audio Sync
Novice thinking : "Video and audio are separate, just overlay them"
Problem : Lip sync issues, audio drift, broken playback.
Wrong approach :
Why wrong :
Audio and video have different durations
No timebase synchronization
No drift correction
Ignores original audio sync
Correct approach 1 : Stretch/compress audio to match video
Correct approach 2 : Precise offset and trim
Correct approach 3 : Mix multiple audio tracks with sync
Audio sync checklist :
Anti Pattern 5: Wrong Codec/Bitrate for Platform
Novice thinking : "One export settings for everything"
Problem : Wasted bandwidth, poor quality, rejected uploads, compatibility issues.
Wrong approach :
Why wrong :
Platform specific size/bitrate limits
Over encoding wastes bandwidth
Wrong resolution for platform
Incompatible codecs
Correct approach : Platform optimized exports
YouTube (recommended settings) :
Instagram (Stories, Reels, Feed) :
Twitter/X :
TikTok :
Web (HTML5 video) :
Platform specs table :
Platform Max Size Max Duration Resolution FPS Bitrate Codec
YouTube Unlimited Unlimited 8K 60 Auto H.264/VP9
Instagram Story 100 MB 15s 1080x1920 30 ~5 Mbps H.264
Instagram Reel 1 GB 90s 1080x1920 30 ~8 Mbps H.264
Twitter 512 MB 2:20 1920x1080 60 5 Mbps H.264
TikTok 287 MB 10min 1080x1920 30 ~4 Mbps H.264
LinkedIn 5 GB 10min 1920x1080 30 5 Mbps H.264
Web Varies Varies 1920x1080 30 2 5 Mbps H.264
Export optimization checklist :
Production Checklist
When to Use vs Avoid
Scenario Appropriate?
Automated video pipeline (script → video) ✅ Yes FFmpeg automation
Batch process 100 videos ✅ Yes parallel FFmpeg jobs
Trim/cut clips programmatically ✅ Yes precise cutting
Add subtitles to videos ✅ Yes burn or soft subs
Color grade footage ⚠️ Limited basic only
Multi cam editing ❌ No use DaVinci Resolve
Motion graphics ❌ No use After Effects
Real time preview editing ❌ No use Premiere/Resolve
References
/references/ffmpeg guide.md Complete FFmpeg command reference
/references/timeline editing.md Timeline concepts, multi track editing
/references/export optimization.md Platform specific export settings
Scripts
scripts/video editor.py Cut, trim, concatenate, transitions, effects
scripts/batch processor.py Parallel batch video processing
This skill guides : Video editing FFmpeg Timeline editing Transitions Export optimization Audio mixing Color grading Automated video production