videoofficial

ffmpeg-video-prep

whyashthakker/bgblur-video-skills · updated May 23, 2026

MDX-style export adds YAML metadata + attribution linking explainx.ai and this canonical listing URL.

$npx skills add https://github.com/whyashthakker/bgblur-video-skills --skill ffmpeg-video-prep
0 commentsdiscussion
summary

Pre-process videos with FFmpeg before blur pipelines — format conversion, trimming, resolution normalization, metadata stripping, and frame-rate standardization. Use when user mentions ffmpeg, video conversion, trim video, normalize format, strip metadata, prepare video for upload, MP4/MOV/MKV conversion, or pre-processing before BGBlur.

skill.md
name
ffmpeg-video-prep
description
Pre-process videos with FFmpeg before blur pipelines — format conversion, trimming, resolution normalization, metadata stripping, and frame-rate standardization. Use when user mentions ffmpeg, video conversion, trim video, normalize format, strip metadata, prepare video for upload, MP4/MOV/MKV conversion, or pre-processing before BGBlur.
argument-hint
input file path, target format, trim range, or upload constraints
allowed-tools
Read, Write, Shell

FFmpeg Video Prep Skill

Prepare source footage for BGBlur processing. Clean inputs produce faster uploads, better motion tracking, and fewer mask artifacts.

Quick Reference

BGBlur accepted formats: MP4, MOV, M4V, AVI, MKV Free tier limits: ≤ 200MB, ≤ 10 minutes Recommended upload spec: H.264 MP4, 1080p or lower, 30fps, metadata stripped

Workflow

Step 1: Inspect Source

python3 scripts/video_probe.py "input.mov"

Note: codec, resolution, duration, file size, rotation metadata.

Step 2: Trim Dead Footage

Remove intro/outro black frames and irrelevant segments to save credits and processing time.

# Trim from 00:00:05 to 00:02:30 (re-encode for frame-accurate cut)
ffmpeg -i input.mp4 -ss 00:00:05 -to 00:02:30 -c:v libx264 -crf 18 -c:a aac -movflags +faststart output_trimmed.mp4

Fast copy trim (keyframe-aligned, no re-encode — may be off by a few frames):

ffmpeg -ss 00:00:05 -i input.mp4 -to 00:02:25 -c copy output_trimmed.mp4

Step 3: Convert to Upload-Ready MP4

ffmpeg -i input.mov \
  -c:v libx264 -preset medium -crf 20 \
  -c:a aac -b:a 128k \
  -movflags +faststart \
  -pix_fmt yuv420p \
  output_ready.mp4

4K → 1080p (reduces size, improves browser processing speed):

ffmpeg -i input_4k.mp4 -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" \
  -c:v libx264 -crf 20 -c:a aac -movflags +faststart output_1080p.mp4

Step 4: Normalize Frame Rate

BGBlur motion tracking works best at consistent frame rates. Target 30fps unless source is 24fps cinematic.

# Force 30fps
ffmpeg -i input.mp4 -r 30 -c:v libx264 -crf 20 -c:a aac output_30fps.mp4

# Preserve 24fps cinematic
ffmpeg -i input.mp4 -r 24 -c:v libx264 -crf 20 -c:a aac output_24fps.mp4

Step 5: Strip Metadata (Privacy)

Remove GPS, camera model, creation timestamps before external processing:

ffmpeg -i input.mp4 -map_metadata -1 -c:v copy -c:a copy output_clean.mp4

For full re-encode + metadata strip:

ffmpeg -i input.mp4 -map_metadata -1 -c:v libx264 -crf 20 -c:a aac output_clean.mp4

Step 6: Fix Common Issues

ProblemFix
Rotated phone video-vf "transpose=1" (90° CW) or use -autorotate
Variable frame rate (VFR)Re-encode with -vsync cfr -r 30
No audio needed-an to drop audio track
File too largeLower CRF (23-28) or scale to 720p
Corrupt timestamps-fflags +genpts
MKV/AVI sourceRe-encode to MP4 (copy may fail)

Phone rotation fix:

ffmpeg -i input.mp4 -vf "transpose=1" -c:v libx264 -crf 20 -c:a aac output_fixed.mp4

Compress for free tier (< 200MB):

ffmpeg -i input.mp4 -vf "scale=1280:-2" -c:v libx264 -crf 23 -c:a aac -b:a 96k output_small.mp4

Step 7: Validate Output

python3 scripts/video_probe.py "output_ready.mp4" --check-metadata

Confirm: format MP4, size under limit, duration under 10 min, metadata cleared.

One-Shot Prep Command

Combine trim + convert + strip metadata:

ffmpeg -ss 00:00:02 -i input.mov -t 00:05:00 \
  -map_metadata -1 \
  -vf "scale=1920:1080:force_original_aspect_ratio=decrease,pad=1920:1080:(ow-iw)/2:(oh-ih)/2" \
  -r 30 -c:v libx264 -preset medium -crf 20 \
  -c:a aac -b:a 128k -movflags +faststart \
  output_bgblur_ready.mp4

Checklist

Pre-Blur Prep:
- [ ] Probed source metadata
- [ ] Trimmed irrelevant segments
- [ ] Converted to MP4 (H.264 + AAC)
- [ ] Normalized to 24 or 30fps
- [ ] Stripped EXIF/GPS metadata
- [ ] Verified size ≤ 200MB (free) or within plan limit
- [ ] Verified duration ≤ 10 min (free)

BGBlur Reference

Upload prepared files at BGBlur Upload. Browser-based processing — no server-side retention after export.

how to use ffmpeg-video-prep

How to use ffmpeg-video-prep on Cursor

AI-first code editor with Composer

1

Prerequisites

Before installing skills in Cursor, ensure your development environment meets these requirements:

  • Cursor installed and configured on your development machine
  • Node.js version 16.0+ with npm package manager (verify with node --version)
  • Active project directory or workspace where you want to add ffmpeg-video-prep
2

Execute installation command

Execute the skills CLI command in your project's root directory to begin installation:

$npx skills add https://github.com/whyashthakker/bgblur-video-skills --skill ffmpeg-video-prep

The skills CLI fetches ffmpeg-video-prep from GitHub repository whyashthakker/bgblur-video-skills and configures it for Cursor.

3

Select Cursor when prompted

The CLI will show a list of available agents. Use arrow keys to navigate and space to select Cursor:

◆ Which agents do you want to install to?
│ ── Universal (.agents/skills) ── always included ────
│ • Amp
│ • Antigravity
│ • Cline
│ • Codex
│ ●Cursor(selected)
│ • Cursor
│ • Windsurf
4

Verify installation

Confirm successful installation by checking the skill directory location:

.cursor/skills/ffmpeg-video-prep

Reload or restart Cursor to activate ffmpeg-video-prep. Access the skill through slash commands (e.g., /ffmpeg-video-prep) or your agent's skill management interface.

Security & Verification Notice

We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.

Skills execute code in your development environment. Always verify the publisher's identity, review recent commits, and test in isolated environments before production deployment.

List & Monetize Your Skill

Submit your Claude Code skill and start earning

GET_STARTED →

Use Cases

Task Automation & Efficiency

Automate repetitive workflows and reduce manual effort

Example

Generate reports, summarize documents, draft communications

Save 3-5 hours per week on routine tasks

Knowledge Enhancement

Learn new skills, understand complex topics, get expert guidance

Example

Explain concepts, provide examples, suggest learning resources

Accelerate learning and skill development by 2x

Quality Improvement

Enhance output quality through reviews, suggestions, and refinements

Example

Review drafts, suggest improvements, catch errors

Improve work quality by 30-40% with less effort

Implementation Guide

Prerequisites

  • Claude Desktop or compatible AI client with skill support
  • Clear understanding of task or problem to solve
  • Willingness to iterate and refine outputs

Time Estimate

15-45 minutes depending on use case complexity

Installation Steps

  1. 1.Install skill using provided installation command
  2. 2.Test with simple use case relevant to your work
  3. 3.Evaluate output quality and relevance
  4. 4.Iterate on prompts to improve results
  5. 5.Integrate into regular workflow if valuable

Common Pitfalls

  • Expecting perfect results without iteration
  • Not providing enough context in prompts
  • Using skill for tasks outside its intended scope
  • Accepting outputs without review and validation

Best Practices

✓ Do

  • +Start with clear, specific prompts
  • +Provide relevant context and constraints
  • +Review and refine all outputs before using
  • +Iterate to improve output quality
  • +Document successful prompt patterns

✗ Don't

  • Don't use without understanding skill limitations
  • Don't skip validation of outputs
  • Don't share sensitive information in prompts
  • Don't expect skill to replace human judgment

💡 Pro Tips

  • Be specific about desired format and style
  • Ask for multiple options to choose from
  • Request explanations to understand reasoning
  • Combine AI efficiency with human expertise

When to Use This

✓ Use When

Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.

✗ Avoid When

Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.

Learning Path

  1. 1Familiarize yourself with skill capabilities and limitations
  2. 2Start with low-risk, non-critical tasks
  3. 3Progress to more complex and valuable use cases
  4. 4Build expertise through regular use and experimentation

Discussion

Product Hunt–style comments (not star reviews)
  • No comments yet — start the thread.
general reviews

Ratings

4.633 reviews
  • Ama Thompson· Dec 20, 2024

    Keeps context tight: ffmpeg-video-prep is the kind of skill you can hand to a new teammate without a long onboarding doc.

  • Kwame Nasser· Dec 12, 2024

    I recommend ffmpeg-video-prep for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.

  • Ganesh Mohane· Dec 4, 2024

    ffmpeg-video-prep fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.

  • Ira Martinez· Dec 4, 2024

    We added ffmpeg-video-prep from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.

  • Sakshi Patil· Nov 23, 2024

    Registry listing for ffmpeg-video-prep matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Evelyn Jackson· Nov 23, 2024

    ffmpeg-video-prep reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Mei Srinivasan· Nov 11, 2024

    ffmpeg-video-prep has been reliable in day-to-day use. Documentation quality is above average for community skills.

  • Chaitanya Patil· Oct 14, 2024

    ffmpeg-video-prep reduced setup friction for our internal harness; good balance of opinion and flexibility.

  • Noah Iyer· Oct 14, 2024

    Registry listing for ffmpeg-video-prep matched our evaluation — installs cleanly and behaves as described in the markdown.

  • Mei Mensah· Oct 2, 2024

    Solid pick for teams standardizing on skills: ffmpeg-video-prep is focused, and the summary matches what you get after install.

showing 1-10 of 33

1 / 4