Agent skill
audio-editing-automation
FFmpeg audio processing, batch editing, normalization, mixing, and automated audio production workflows. Use when processing audio at scale, automating editing tasks, or building audio pipelines.
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/audio-editing-automation-onesmartguy-next-level-real-esta
SKILL.md
Audio Editing Automation
FFmpeg Audio Operations
Extract Audio from Video
bash
ffmpeg -i input.mp4 -vn -acodec copy audio.aac
# -vn: no video
# -acodec copy: no re-encoding
Audio Format Conversion
bash
# WAV to MP3
ffmpeg -i input.wav -c:a libmp3lame -b:a 192k output.mp3
# MP3 to AAC
ffmpeg -i input.mp3 -c:a aac -b:a 192k output.m4a
Volume Normalization
bash
# Increase volume by 10dB
ffmpeg -i input.mp3 -af "volume=10dB" output.mp3
# Normalize using loudnorm filter
ffmpeg -i input.wav -af "loudnorm=I=-16:TP=-1.5:LRA=11" output.wav
Audio Mixing
bash
# Mix two audio files
ffmpeg -i voice.mp3 -i music.mp3 -filter_complex amix=inputs=2:duration=longest output.mp3
# Voice + background music (ducking)
ffmpeg -i voice.mp3 -i music.mp3 -filter_complex \
"[1:a]volume=0.3[bg];[0:a][bg]amix=inputs=2:duration=first" output.mp3
Batch Processing
python
import subprocess
from pathlib import Path
def normalize_audio_batch(input_dir, output_dir):
for audio in Path(input_dir).glob("*.mp3"):
output = Path(output_dir) / audio.name
subprocess.run([
'ffmpeg', '-i', str(audio),
'-af', 'loudnorm=I=-16:TP=-1.5',
str(output)
])
Audio Quality Standards
Podcast Export
Format: MP3
Bitrate: 128-192kbps
Sample Rate: 44.1kHz
Loudness: -16 LUFS
Peak: -1dB
Audiobook (ACX)
Format: MP3, 192kbps CBR
Sample Rate: 44.1kHz
Peak: -3dB
RMS: -18dB to -23dB
Noise Floor: -60dB
YouTube/Video
Format: AAC
Bitrate: 192kbps
Sample Rate: 48kHz
Loudness: -14 LUFS
Automation Workflow
python
def audio_production_pipeline(voice_file, music_file):
# 1. Normalize voice
normalize_audio(voice_file, 'voice_normalized.mp3')
# 2. Mix with music
mix_audio('voice_normalized.mp3', music_file, 'mixed.mp3')
# 3. Final loudness normalization
final_normalize('mixed.mp3', 'final.mp3', target_lufs=-16)
# 4. Export for platforms
export_for_podcast('final.mp3')
export_for_youtube('final.mp3')
Resources
- FFmpeg Audio Documentation
- Loudness Standards (LUFS)
- Audio Mastering Best Practices
Didn't find tool you were looking for?