FFmpeg Usage Examples
By Ercan - 13/04/2025
FFmpeg is a versatile open-source tool for handling multimedia data, including video, audio, and images.
It provides command-line utilities for converting formats, extracting metadata, resizing, cropping, merging, and automating repetitive tasks.
Whether you need to process a single file or manage large collections of media, FFmpeg offers fast and flexible solutions.
You can download FFmpeg by using link below.
https://ffmpeg.org/download.html
⚡ Basic Video Operations
Convert video format:
ffmpeg -i input.mp4 output.avi
Display video information:
ffmpeg -i input.mp4
Extract audio from video:
ffmpeg -i input.mp4 -q:a 0 -map a output.mp3
Extract video duration:
ffmpeg -i input.mp4 2>&1 | grep "Duration"
Capture a single frame:
ffmpeg -i input.mp4 -ss 00:00:10 -vframes 1 frame.png
🎞️ Video Editing Examples
Resize video to 720p:
ffmpeg -i input.mp4 -vf scale=1280:720 output_720p.mp4
Crop video (x=100, y=50, width=640, height=480):
ffmpeg -i input.mp4 -vf "crop=640:480:100:50" output_cropped.mp4
Rotate video 90 degrees clockwise:
ffmpeg -i input.mp4 -vf "transpose=1" output_rotated.mp4
Trim video segment:
ffmpeg -i input.mp4 -ss 00:01:00 -to 00:02:30 -c copy output_trim.mp4
Merge multiple videos (same codec/resolution):
ffmpeg -f concat -safe 0 -i file_list.txt -c copy output.mp4
Overlay text on video:
ffmpeg -i input.mp4 -vf "drawtext=text='Sample Text':fontcolor=white:fontsize=24:x=10:y=10" output_text.mp4
Add watermark/logo:
ffmpeg -i input.mp4 -i logo.png -filter_complex "overlay=10:10" output_logo.mp4
🔊 Audio Operations
Convert audio format:
ffmpeg -i input.wav output.mp3
Normalize audio volume:
ffmpeg -i input.mp3 -filter:a "volume=1.5" output_louder.mp3
Extract audio segment:
ffmpeg -i input.mp3 -ss 00:01:00 -to 00:02:30 -c copy output_segment.mp3
Merge multiple audio files:
ffmpeg -i "concat:audio1.mp3|audio2.mp3|audio3.mp3" -acodec copy output.mp3
Change audio speed (tempo):
ffmpeg -i input.mp3 -filter:a "atempo=1.25" output_faster.mp3
Convert stereo to mono:
ffmpeg -i input.mp3 -ac 1 output_mono.mp3
🗂️ Batch Processing Examples
Convert all .mov files in a directory to .mp4:
for f in *.mov; do ffmpeg -i "$f" "${f%.mov}.mp4"; done
Extract thumbnails from all videos:
for f in *.mp4; do ffmpeg -i "$f" -ss 00:00:05 -vframes 1 "${f%.mp4}.png"; done
Compress all videos to lower bitrate:
for f in *.mp4; do ffmpeg -i "$f" -b:v 1000k -bufsize 1000k "compressed_$f"; done
Batch convert audio files:
for f in *.wav; do ffmpeg -i "$f" "${f%.wav}.mp3"; done
🧪 Advanced Examples
Extract frames at 1 frame per second:
ffmpeg -i input.mp4 -vf fps=1 frames/output_%04d.png
Split video into 5-minute segments:
ffmpeg -i input.mp4 -c copy -map 0 -segment_time 00:05:00 -f segment segment_%03d.mp4
Replace video audio with another track:
ffmpeg -i input_video.mp4 -i new_audio.mp3 -c:v copy -map 0:v:0 -map 1:a:0 output.mp4
Overlay two videos (picture-in-picture):
ffmpeg -i main.mp4 -i overlay.mp4 -filter_complex "[1:v]scale=320:240[ov];[0:v][ov]overlay=10:10" output_pip.mp4
Adjust video playback speed:
ffmpeg -i input.mp4 -filter:v "setpts=0.5*PTS" output_fast.mp4
Extract subtitles from video:
ffmpeg -i input.mkv -map 0:s:0 subs.srt
Add subtitles to video:
ffmpeg -i input.mp4 -vf "subtitles=subs.srt" output_subtitled.mp4
🚀 Final Notes
FFmpeg provides comprehensive control over multimedia files, from simple conversions to complex transformations.
Its command-line interface makes it ideal for automation, scripting, and batch processing.
💡 Pro tip: Always test commands on single files before running batch operations, and keep backups of original media.
Tags: ffmpeg
