python-ffmpeg

v2026.09.24

Expert guide to FFmpeg from Python for video/audio processing, encoding, streaming, and media manipulation. PROACTIVELY activate for: (1) Python+FFmpeg via ffmpeg-python, PyAV, subprocess, moviepy; (2) encoding (H.264, H.265/HEVC, VP9/WebM, AV1); (3) hardware acceleration (NVIDIA NVENC, Intel QSV, AMD AMF, VAAPI); (4) audio extraction, conversion, filter chains; (5) video filters (scale, crop, rotate, text/image overlays, color); (6) trim/concat workflows; (7) HLS, DASH, RTMP streaming; (8) metadata probing (ffprobe, ffmpeg.probe); (9) thumbnails (single + sprite sheets); (10) frame-accurate PyAV; (11) bug debugging (audio loss after filters, subprocess deadlocks, Windows paths, -y prompts); (12) GIF, speed change, picture-in-picture, blur/quality detection. Provides: library selection, install steps, copy-pasteable encoding recipes, hardware-accel flag reference, error handling, subprocess best practices, performance tuning for production Python+FFmpeg pipelines.

GitHub
安装命令
npx skhub add josiahsiegel/python-ffmpeg
Markdown
SKILL.md

Python FFmpeg Skill

Use this skill for Python-driven FFmpeg work: encoding, filtering, audio processing, metadata probing, streaming, thumbnails, PyAV frame access, subprocess integration, and production troubleshooting.

When to Use This Skill

Use when the user asks for tasks covered by the frontmatter triggers, especially implementation guidance, debugging, architecture choices, production hardening, or performance-sensitive decisions in this domain. Start from this orchestrator, then load the focused reference file that matches the requested detail level.

Core Workflow

  1. Choose the integration layer first: ffmpeg-python for readable filter graphs, subprocess for full CLI parity, PyAV for frame-level access, and moviepy only for simple edits.
  2. Probe inputs before processing so codec, duration, resolution, FPS, audio streams, and metadata are known.
  3. Preserve audio explicitly whenever a video filter is applied; filtered video streams do not automatically carry audio.
  4. Select the output codec and acceleration path based on compatibility, compression, and deployment hardware.
  5. Use overwrite/error-handling patterns consistently: overwrite_output() with ffmpeg-python or -y with subprocess, plus captured stderr for diagnostics.
  6. For large media, stream frames or use temp files instead of reading all stdout or frames into memory.

Key Gotchas

  • Video filters commonly drop audio unless the audio stream is passed to ffmpeg.output(...) or copied explicitly.
  • Subprocess pipes can deadlock if stdout/stderr are not drained or frame reads are not sized correctly.
  • Windows paths are safest as Path(...).as_posix() or as subprocess argument-list entries, not hand-quoted command strings.
  • CRF values are codec-specific: H.265 CRF 28 is roughly comparable to H.264 CRF 23.
  • Hardware encoders trade compression efficiency for speed; validate availability before choosing NVENC, QSV, AMF, or VAAPI.

Reference Map

  • references/ffmpeg-complete-recipes.md - Full original recipe guide covering encoding, hardware acceleration, audio/audio filters, video filters, trimming, concatenation, streaming, probing, thumbnails, PyAV, subprocess patterns, common transformations, errors, and performance tips.
  • references/ffmpeg-advanced-patterns.md - Additional advanced FFmpeg patterns already maintained for this skill.

Response Guidance

  • Preserve the user's existing framework, library, and tooling choices unless there is a clear compatibility or performance reason to suggest an alternative.
  • Give copy-pasteable code only for the exact task at hand; otherwise point to the relevant reference section.
  • Call out tradeoffs, failure modes, and verification steps for production workflows.
  • Prefer accessible, maintainable, measurable solutions over clever micro-optimizations.
发现
标签

此技能尚未发布标签。

版本
最新版本元数据

版本

v2026.09.24

发布时间

Sep 24, 2026

分类

未分类

许可证

MIT

源路径

plugins/python-master/skills/python-ffmpeg

默认分支

main

最新提交

5a1b112

Tree SHA

376c8e0