Research-mind toolchains-universal-infrastructure-media-transcoding
Media Transcoding (FFmpeg)
install
source · Clone the upstream repo
git clone https://github.com/MacPhobos/research-mind
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/MacPhobos/research-mind "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/toolchains-universal-infrastructure-media-transcoding" ~/.claude/skills/macphobos-research-mind-toolchains-universal-infrastructure-media-transcoding && rm -rf "$T"
manifest:
.claude/skills/toolchains-universal-infrastructure-media-transcoding/skill.mdsource content
Media Transcoding (FFmpeg)
Overview
Use FFmpeg presets to normalize video outputs for web streaming, mobile delivery, or archival quality. Your
hf-videos repo already includes a simple bash script and a more advanced Python script with presets, backups, and logging.
Quick Start (hf-videos)
./ffmpeg_convert.sh check ./ffmpeg_convert.sh web_standard "My Video.mp4" ./ffmpeg_convert.sh batch_web_standard
Outputs are written to
converted/ with backups in backup/ and logs in conversion.log.
Preset Summary (hf-videos)
- web_standard: 1080p max, CRF 23, 128k audio,
+faststart - web_high: 1080p max, CRF 20, 192k audio
- mobile: 720p max, CRF 25, 96k audio
- ultra_compact: 480p max, CRF 28, 64k audio
- archive: original res, CRF 18, 256k audio
All presets use H.264 + AAC with
+faststart for streaming-friendly MP4s.
Batch Workflow
- Run a single-file conversion first to validate output.
- Run batch conversion once the preset is confirmed.
- Verify output sizes and playback.
Batch commands:
./ffmpeg_convert.sh batch_web_standard ./ffmpeg_convert.sh batch_mobile ./ffmpeg_convert.sh batch_ultra_compact
Advanced Script (convert_video.py)
Use
convert_video.py when you need:
- Progress monitoring
- Metadata inspection
- Overwrite control
- Preset listing and batch automation
python3 convert_video.py --list-presets python3 convert_video.py --file "My Video.mp4" --preset web_standard python3 convert_video.py --preset mobile --overwrite
Output Conventions
- Converted files use suffixes like
._web_standard - Backups preserve original filenames.
- Logs go to
for audit and troubleshooting.conversion.log
Troubleshooting
- FFmpeg missing:
(macOS) or install from ffmpeg.org.brew install ffmpeg - Permission errors:
.chmod +x ffmpeg_convert.sh - Disk pressure: clean
andconverted/
after validation.backup/
Related Skills
toolchains/universal/infrastructure/docker