ffmpeg-audio-processing
Tools for programmatically processing, normalizing, and editing audio files.
Install
mkdir -p .claude/skills/ffmpeg-audio-processing && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4395" && unzip -o skill.zip -d .claude/skills/ffmpeg-audio-processing && rm skill.zipInstalls to .claude/skills/ffmpeg-audio-processing
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Extract, normalize, mix, and process audio tracks - audio manipulation and analysisKey capabilities
- →Extract audio tracks from video containers
- →Normalize audio loudness levels
- →Mix multiple audio files
- →Convert audio formats and sample rates
- →Apply audio filters and effects
How it works
It executes FFmpeg command-line operations to manipulate audio streams through filters, mapping, and transcoding parameters.
Inputs & outputs
When to use ffmpeg-audio-processing
- →Normalizing audio levels
- →Mixing multiple audio files
- →Extracting audio from video
- →Analyzing audio properties
About this skill
FFmpeg Audio Processing Skill
Extract, normalize, mix, and process audio tracks from video files.
When to Use
- Extract audio from video
- Normalize audio levels
- Mix multiple audio tracks
- Convert audio formats
- Extract specific channels
- Adjust audio volume
Extract Audio
# Extract as MP3
ffmpeg -i video.mp4 -vn -acodec libmp3lame -q:a 2 audio.mp3
# Extract as AAC (copy, no re-encode)
ffmpeg -i video.mp4 -vn -c:a copy audio.aac
# Extract as WAV (uncompressed)
ffmpeg -i video.mp4 -vn -acodec pcm_s16le audio.wav
# Extract specific audio stream
ffmpeg -i video.mp4 -map 0:a:1 -c:a copy audio2.aac
Normalize Audio
# Normalize loudness (ITU-R BS.1770-4)
ffmpeg -i input.mp4 -af "loudnorm=I=-23:TP=-1.5:LRA=11" output.mp4
# Simple normalization
ffmpeg -i input.mp4 -af "volume=2.0" output.mp4
# Peak normalization
ffmpeg -i input.mp4 -af "volumedetect" -f null -
# Then use the detected peak to normalize
ffmpeg -i input.mp4 -af "volume=0.5" output.mp4
Volume Adjustment
# Increase volume by 6dB
ffmpeg -i input.mp4 -af "volume=6dB" output.mp4
# Decrease volume by 3dB
ffmpeg -i input.mp4 -af "volume=-3dB" output.mp4
# Set absolute volume
ffmpeg -i input.mp4 -af "volume=0.5" output.mp4
Channel Operations
# Extract left channel
ffmpeg -i stereo.mp3 -map_channel 0.0.0 left.mp3
# Extract right channel
ffmpeg -i stereo.mp3 -map_channel 0.0.1 right.mp3
# Convert stereo to mono
ffmpeg -i stereo.mp3 -ac 1 mono.mp3
# Convert mono to stereo
ffmpeg -i mono.mp3 -ac 2 stereo.mp3
Mix Audio Tracks
# Replace audio track
ffmpeg -i video.mp4 -i audio.mp3 -c:v copy -map 0:v:0 -map 1:a:0 output.mp4
# Mix two audio tracks
ffmpeg -i video.mp4 -i audio2.mp3 \
-filter_complex "[0:a][1:a]amix=inputs=2:duration=first" \
-c:v copy output.mp4
# Mix with volume control
ffmpeg -i video.mp4 -i bgm.mp3 \
-filter_complex "[0:a]volume=1.0[voice];[1:a]volume=0.3[music];[voice][music]amix=inputs=2:duration=first" \
-c:v copy output.mp4
Audio Delay
# Delay audio by 0.5 seconds
ffmpeg -i video.mp4 -itsoffset 0.5 -i video.mp4 \
-map 0:v -map 1:a -c copy output.mp4
# Using adelay filter (milliseconds)
ffmpeg -i input.mp4 -af "adelay=500|500" output.mp4
Sample Rate Conversion
# Resample to 48kHz
ffmpeg -i input.mp4 -af "aresample=48000" output.mp4
# Resample audio only
ffmpeg -i input.mp4 -vn -af "aresample=48000" -ar 48000 audio.wav
Audio Filters
# High-pass filter (remove low frequencies)
ffmpeg -i input.mp4 -af "highpass=f=200" output.mp4
# Low-pass filter (remove high frequencies)
ffmpeg -i input.mp4 -af "lowpass=f=3000" output.mp4
# Band-pass filter
ffmpeg -i input.mp4 -af "bandpass=f=1000:width_type=h:w=500" output.mp4
# Fade in/out
ffmpeg -i input.mp4 -af "afade=t=in:st=0:d=2,afade=t=out:st=8:d=2" output.mp4
Audio Analysis
# Detect volume levels
ffmpeg -i input.mp4 -af "volumedetect" -f null -
# Measure loudness (LUFS)
ffmpeg -i input.mp4 -af "ebur128=peak=true" -f null -
# Get audio statistics
ffprobe -v error -select_streams a:0 \
-show_entries stream=sample_rate,channels,bit_rate \
-of json input.mp4
Combine Multiple Audio Files
# Concatenate audio files
ffmpeg -i "concat:audio1.mp3|audio2.mp3|audio3.mp3" -c copy output.mp3
# Using file list
# file 'audio1.mp3'
# file 'audio2.mp3'
ffmpeg -f concat -safe 0 -i list.txt -c copy output.mp3
Notes
- Use
-vnto disable video when extracting audio -mapto select specific streams-affor audio filters-acfor channel count-arfor sample rate- Normalization may require two passes for accurate results
When not to use it
- →Complex non-linear audio editing
- →Real-time audio processing
Prerequisites
Limitations
- →Normalization may require two passes for accuracy
- →Limited to command-line supported operations
How it compares
It provides a command-line interface for batch-processing and precise audio manipulation, avoiding the overhead of graphical audio editing software.
Compared to similar skills
ffmpeg-audio-processing side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| ffmpeg-audio-processing (this skill) | 5 | 2mo | Review | Beginner |
| pdf-processing-pro | 17 | 10mo | Review | Intermediate |
| python-repl | 6 | 4mo | Review | Beginner |
| math-router | 6 | 7mo | Review | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by benchflow-ai
View all by benchflow-ai →You might also like
pdf-processing-pro
davila7
Production-ready PDF processing with forms, tables, OCR, validation, and batch operations. Use when working with complex PDF workflows in production environments, processing large volumes of PDFs, or requiring robust error handling and validation.
python-repl
gptme
Interactive Python REPL automation with common helpers and best practices
math-router
parcadei
Deterministic router for math cognitive stack - maps user intent to exact CLI commands
posthog-core-workflow-b
jeremylongshore
Execute PostHog secondary workflow: Core Workflow B. Use when implementing secondary use case, or complementing primary workflow. Trigger with phrases like "posthog secondary workflow", "secondary task with posthog".
index-at-creation
parcadei
Index at Creation Time
bloblang-authoring
redpanda-data
This skill should be used when users need to create or debug Bloblang transformation scripts. Trigger when users ask about transforming data, mapping fields, parsing JSON/CSV/XML, converting timestamps, filtering arrays, or mention "bloblang", "blobl", "mapping processor", or describe any data transformation need like "convert this to that" or "transform my JSON".