| name | ffmpeg-audio-processing |
| description | Extract, normalize, mix, and process audio tracks - audio manipulation and analysis |
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
ffmpeg -i video.mp4 -vn -acodec libmp3lame -q:a 2 audio.mp3
ffmpeg -i video.mp4 -vn -c:a copy audio.aac
ffmpeg -i video.mp4 -vn -acodec pcm_s16le audio.wav
ffmpeg -i video.mp4 -map 0:a:1 -c:a copy audio2.aac
Normalize Audio
ffmpeg -i input.mp4 -af "loudnorm=I=-23:TP=-1.5:LRA=11" output.mp4
ffmpeg -i input.mp4 -af "volume=2.0" output.mp4
ffmpeg -i input.mp4 -af "volumedetect" -f null -
ffmpeg -i input.mp4 -af "volume=0.5" output.mp4
Volume Adjustment
ffmpeg -i input.mp4 -af "volume=6dB" output.mp4
ffmpeg -i input.mp4 -af "volume=-3dB" output.mp4
ffmpeg -i input.mp4 -af "volume=0.5" output.mp4
Channel Operations
ffmpeg -i stereo.mp3 -map_channel 0.0.0 left.mp3
ffmpeg -i stereo.mp3 -map_channel 0.0.1 right.mp3
ffmpeg -i stereo.mp3 -ac 1 mono.mp3
ffmpeg -i mono.mp3 -ac 2 stereo.mp3
Mix Audio Tracks
ffmpeg -i video.mp4 -i audio.mp3 -c:v copy -map 0:v:0 -map 1:a:0 output.mp4
ffmpeg -i video.mp4 -i audio2.mp3 \
-filter_complex "[0:a][1:a]amix=inputs=2:duration=first" \
-c:v copy output.mp4
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
ffmpeg -i video.mp4 -itsoffset 0.5 -i video.mp4 \
-map 0:v -map 1:a -c copy output.mp4
ffmpeg -i input.mp4 -af "adelay=500|500" output.mp4
Sample Rate Conversion
ffmpeg -i input.mp4 -af "aresample=48000" output.mp4
ffmpeg -i input.mp4 -vn -af "aresample=48000" -ar 48000 audio.wav
Audio Filters
ffmpeg -i input.mp4 -af "highpass=f=200" output.mp4
ffmpeg -i input.mp4 -af "lowpass=f=3000" output.mp4
ffmpeg -i input.mp4 -af "bandpass=f=1000:width_type=h:w=500" output.mp4
ffmpeg -i input.mp4 -af "afade=t=in:st=0:d=2,afade=t=out:st=8:d=2" output.mp4
Audio Analysis
ffmpeg -i input.mp4 -af "volumedetect" -f null -
ffmpeg -i input.mp4 -af "ebur128=peak=true" -f null -
ffprobe -v error -select_streams a:0 \
-show_entries stream=sample_rate,channels,bit_rate \
-of json input.mp4
Combine Multiple Audio Files
ffmpeg -i "concat:audio1.mp3|audio2.mp3|audio3.mp3" -c copy output.mp3
ffmpeg -f concat -safe 0 -i list.txt -c copy output.mp3
Notes
- Use
-vn to disable video when extracting audio
-map to select specific streams
-af for audio filters
-ac for channel count
-ar for sample rate
- Normalization may require two passes for accurate results