Media processing utilities for images, audio, and video using FFmpeg and ImageMagick. Use when working with media conversion, optimization, or batch processing tasks.
Scanned 2/12/2026
Install via CLI
openskills install siviter-xyz/dot-agent---
name: media-processing
description: Media processing utilities for images, audio, and video using FFmpeg and ImageMagick. Use when working with media conversion, optimization, or batch processing tasks.
---
# Media Processing
Tools and workflows for working with images, audio, and video in a repeatable, scriptable way using standard CLI tools (FFmpeg, ImageMagick) and Python helpers.
## When to Use
- Working with image batches (thumbnails, resizing, format conversion)
- Converting media between formats (video ↔ audio ↔ image)
- Optimizing video size while maintaining acceptable quality
- Preparing assets for web, mobile, or archival use
- Designing or refining CLI workflows around FFmpeg/ImageMagick
## Key Principles
- **CLI-first workflows**: Prefer command-line tools (FFmpeg, ImageMagick) and scripts that can be automated in CI or local tooling.
- **Deterministic scripts**: Scripts should be safe to run repeatedly with predictable output paths and options.
- **Non-destructive defaults**: Default to writing outputs to new files/directories rather than overwriting originals.
- **Cross-platform friendly**: Keep examples and scripts usable on Linux, macOS, and Windows where possible.
- **Agent-agnostic**: Guidance should work with any coding agent (Cursor, Claude, Copilot, etc.), not one specific environment.
## Capabilities
- **Image workflows**
- Batch resize and thumbnail generation
- Aspect-ratio–aware resizing (fit, fill, cover, exact)
- Optional watermarking
- Format conversion (e.g., PNG → WebP, JPEG)
- **Media conversion**
- Detects media type (video, audio, image) from extension
- Uses FFmpeg for video/audio, ImageMagick for images
- Quality presets for `web`, `archive`, and `mobile` use cases
- Batch conversion with dry-run and verbose modes
- **Video optimization**
- Resolution and frame-rate adjustments
- Single-pass (CRF) or two-pass encoding
- Audio bitrate tuning
- Basic before/after comparison (size, bitrate, resolution, FPS)
## Scripts
Scripts live in `scripts/` and are intended to be run directly from a shell:
- `batch_resize.py`
- Batch image resizing with multiple strategies (`fit`, `fill`, `cover`, `exact`, `thumbnail`)
- Optional watermark overlay
- Supports parallel processing and dry-run mode
- `media_convert.py`
- Unified conversion tool for video, audio, and images
- Automatically picks FFmpeg or ImageMagick
- Uses quality presets (`web`, `archive`, `mobile`)
- Supports batch conversion and format changes (e.g., `.mov` → `.mp4`, `.wav` → `.mp3`)
- `video_optimize.py`
- Focused on video size/quality trade-offs
- Resolution caps, FPS reduction, CRF tuning, optional two-pass encoding
- Optional comparison summary between original and optimized outputs
See `scripts/requirements.txt` for environment expectations (Python 3.10+, FFmpeg, ImageMagick) and system installation hints.
## Usage Guidelines
- **Check dependencies first**
- Ensure `ffmpeg` and `ffprobe` are installed and on `PATH` for video/audio tasks.
- Ensure `magick` (ImageMagick) is installed and on `PATH` for image tasks.
- **Prefer dry-runs when exploring**
- Use `--dry-run` and/or `--verbose` flags on scripts to inspect generated commands before running them.
- **Keep originals**
- Point outputs to a separate directory on first runs (e.g., `--output ./out/`) to avoid accidental overwrites.
- **Document workflows**
- When you find good command lines or script invocations, promote them into project scripts (e.g., `just`, `npm scripts`, or CI jobs) so they’re repeatable.
## References
For deeper tool-specific notes (placeholders for now, extend as needed), see:
- `references/ffmpeg-encoding.md` – FFmpeg encoding patterns and flags
- `references/ffmpeg-filters.md` – Common filter graphs (scale, crop, audio filters)
- `references/ffmpeg-streaming.md` – Streaming-friendly settings and HLS/DASH tips
- `references/format-compatibility.md` – Container/codec compatibility notes (web, mobile, desktop)
- `references/imagemagick-batch.md` – Batch image processing patterns with ImageMagick
- `references/imagemagick-editing.md` – Image editing operations (crop, resize, composite, text, etc.)
No comments yet. Be the first to comment!