crush/skills/video-mute/SKILL.md
Remove audio tracks from video files. Use when the user needs to strip audio from videos, create silent versions, or remove unwanted soundtracks from MP4, MOV, AVI, MKV, WebM, and other video formats.
npx skillsauth add meowgorithm/dotfiles video-muteInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Remove audio tracks from video files while preserving video quality.
| Format | Extension | Notes | | ------ | --------- | -------------------------------- | | MP4 | .mp4 | Most common, widely compatible | | MOV | .mov | Apple QuickTime format | | AVI | .avi | Windows format, larger files | | MKV | .mkv | Matroska, supports many codecs | | WebM | .webm | Web-optimized format | | MPEG | .mpg, .mpeg | Older format | | FLV | .flv | Flash video format | | WMV | .wmv | Windows Media Video |
scripts/mute.sh input.mp4 output.mp4
Or use the default naming (appends -muted):
scripts/mute.sh input.mp4
# Creates: input-muted.mp4
Remove audio from all MP4 files in current directory:
scripts/mute.sh *.mp4
Output files will be named with -muted suffix.
Use copy mode to strip audio without re-encoding video (much faster):
scripts/mute.sh -c input.mp4 output.mp4
# Re-encode with H.264 (better compatibility)
scripts/mute.sh -v libx264 input.mp4 output.mp4
# Re-encode with H.265/HEVC (smaller file size)
scripts/mute.sh -v libx265 input.mp4 output.mp4
| Option | Description | Example |
| -------------- | ---------------------------------------- | ------------------- |
| -c, --copy | Copy video stream (no re-encode, fast) | -c |
| -v, --vcodec | Video codec (default: copy) | -v libx264 |
| -y, --yes | Overwrite output without asking | -y |
| -h, --help | Show help | -h |
Requires ffmpeg for video processing.
Install ffmpeg:
# macOS
brew install ffmpeg
# Ubuntu/Debian
sudo apt-get install ffmpeg
# Arch
sudo pacman -S ffmpeg
# Fedora
dnf install ffmpeg
Remove original audio before adding new soundtrack:
scripts/mute.sh -c vacation.mp4
# Then add new audio with ffmpeg or video editor
Remove audio from all videos in a folder:
for video in ~/Videos/*.mp4; do
scripts/mute.sh -c "$video"
done
Make short silent preview versions:
# First trim to 10 seconds, then mute
ffmpeg -i long-video.mp4 -t 10 -c copy -an preview.mp4
Remove sensitive audio before sharing:
scripts/mute.sh -c -y meeting-recording.mp4
-c): Fastest, no quality loss, same file sizeSome codecs may not be available. Check available codecs:
ffmpeg -encoders | grep -i h264
Use copy mode (-c) instead of re-encoding.
Copy mode preserves original quality. If re-encoding, try a higher bitrate:
ffmpeg -i input.mp4 -an -vcodec libx264 -crf 18 output.mp4
tools
Convert video files (MP4, MOV, WebM, GIF, MKV, AVI, etc.) into animated WebP images with control over fps, size, quality, loop count, and trimming. Use when the user wants to turn a video or screen recording into an animated WebP, create a lightweight demo loop, replace an animated GIF with a smaller WebP, or produce a short clip as a .webp.
development
Convert images between formats (PNG, JPEG, WebP, GIF, BMP, TIFF, AVIF, HEIC) with quality control and resizing. Use when the user needs to convert images, batch process multiple files, optimize image sizes, or convert to modern formats like WebP or AVIF.
tools
Use charmtone colors via the `charmtone` CLI or Go API (`github.com/charmbracelet/x/exp/charmtone`). Triggers when the user asks to use charmtone colors, generate color palettes, get hex values, create CSS/SCSS/Vim color variables, or work with the CharmTone palette in Go code. Also triggers on mentions of specific charmtone color names (Cherry, Charple, Julep, Hazy, etc.) or requests to pick/choose/apply charmtone colors.
testing
Stage and commit changes with a Conventional Commits message. Invoke with /commit "optional scope hint". Inspects the diff, picks an appropriate type and scope, writes a concise message, and commits. Does not push.