FFMPEG

Învață FFmpeg: comenzi explicate cu exemple

50 de comenzi 6 categorii

FFmpeg este cel mai puternic și utilizat framework multimedia din lume, capabil să decodifice, să encodizeze, să transcodeze, să filtreze și să transmită aproape orice format audio sau video creat vreodată. Este nucleul invizibil din spatele playerelor video (VLC), platformelor de streaming (YouTube, Netflix) și browserelor web.

Arhitectura sa modulară separă procesul în etape logice clare: demultiplexarea containerului (demuxer), decodarea fluxurilor comprimate, aplicarea de filtre video/audio în timp real (libavfilter) și re-comprimarea cu encodere de generație următoare (H.264, H.265/HEVC, VP9, AV1, AAC, Opus).

Mai jos găsești cele 50 de comenzi, opțiuni și filtre esențiale grupate pe categorii: comenzi de bază și flux de lucru, tehnici de compresie video și calitate (CRF/Presets), procesare și normalizare sonoră (EBU R128), filtre de manipulare și scalare a cadrelor, containere și metadate, precum și streaming live (RTMP/HLS) și accelerare pe placă video (NVIDIA NVENC, Apple Silicon).

macOS • Windows • Linux

Ghid de instalare FFmpeg pe fiecare sistem de operare

Instalează FFmpeg cu suport complet pentru codecuri audio/video (x264, x265, VP9, AV1, AAC, MP3) pe macOS, Windows și Linux.

Cerințe de sistem: macOS 12+, Windows 10/11 sau Linux (orice distribuție); spațiu pe disc pentru fișiere multimedia temporare.

Terminal macOS (Homebrew / zsh)
# Instalare prin Homebrew (include toate codecurile majore):
brew install ffmpeg

# Verificare versiune și librării compilate:
ffmpeg -version
ffprobe -version

Comenzi de bază și opțiuni globale 8 comenzi

Compresie și encodare video 9 comenzi

Encodare și procesare audio 8 comenzi

Filtre video și manipulare cadre 10 comenzi

Containere, fluxuri și metadate 8 comenzi

Streaming, accelerare hardware și inspecție 7 comenzi

Toate comenzile și opțiunile FFmpeg

Lista completă a celor 50 de comenzi, opțiuni și filtre FFmpeg explicate în această secțiune. Fiecare are propria pagină dedicată, cu explicații în limba română, sintaxă și exemple practice gata de rulat.

Comenzi de bază și opțiuni globale (8)

Funcție Ce face
-i (Input file) Specifică calea sau URL-ul fișierului multimedia de intrare ce urmează a fi procesat.
ffmpeg -i intrare.mp4 iesire.mkv
-c copy (Stream copy) Copiază stream-urile direct fără re-encodare, oferind viteză instantanee și zero pierderi de calitate.
ffmpeg -i intrare.mkv -c copy iesire.mp4
-y și -n (Suprascriere) Forțează suprascrierea fișierului de ieșire (-y) sau oprește execuția dacă fișierul există deja (-n).
ffmpeg -y -i intrare.mp4 iesire.mp4
-t (Limitare durată) Limitează durata procesării la un număr de secunde sau un interval de timp fix.
ffmpeg -i intrare.mp4 -t 30 iesire.mp4
-ss (Seek / Punct de start) Sare direct la un moment specific din fișier (fast seek înainte de -i vs frame-accurate seek după -i).
ffmpeg -ss 00:01:30 -i intrare.mp4 -c copy iesire.mp4
-to (Punct de oprire) Oprește scrierea la atingerea unui moment fix de pe axa timpului a fișierului sursă.
ffmpeg -ss 00:00:30 -i intrare.mp4 -to 00:02:00 -c copy iesire.mp4
-re (Rulare la framerate nativ) Citește fișierul de intrare la viteza sa nativă de cadre pe secundă, esențial pentru live streaming.
ffmpeg -re -i video.mp4 -c:v libx264 -f flv rtmp://live.youtube.com/app/cheie
-v și -stats (Nivel logare și statistici) Controlează volumul de mesaje afișate în terminal și linia de progres a codării.
ffmpeg -v error -i intrare.mp4 iesire.mp4

Compresie și encodare video (9)

Funcție Ce face
libx264 (Codec H.264 / AVC) Standardul universal de compresie video H.264, compatibil cu 99.9% din toate dispozitivele și browserele.
ffmpeg -i intrare.mov -c:v libx264 -crf 23 -preset medium iesire.mp4
libx265 (Codec H.265 / HEVC) Standardul de înaltă eficiență HEVC ce oferă până la 50% economie de lățime de bandă la aceeași calitate vizuală.
ffmpeg -i intrare.mp4 -c:v libx265 -crf 28 -preset medium iesire.mp4
libvpx-vp9 (Codec VP9 / WebM) Codec-ul video open-source de la Google, fără licențe de brevet, optimizat pentru HTML5 și YouTube.
ffmpeg -i intrare.mp4 -c:v libvpx-vp9 -crf 30 -b:v 0 -c:a libopus iesire.webm
libaom-av1 (Codec AV1) Standardul video de ultimă generație AV1 (AOMedia), cu 30% mai eficient decât HEVC/VP9.
ffmpeg -i intrare.mp4 -c:v libaom-av1 -crf 30 -b:v 0 -cpu-used 4 iesire.mp4
-crf (Constant Rate Factor) Parametrul principal de control al calității: menține o fidelitate vizuală constantă în toate cadrele.
ffmpeg -i intrare.mp4 -c:v libx264 -crf 23 iesire.mp4
-preset (Viteza de codare) Stabilește balanța între timpul de procesare pe procesor și gradul de compresie al fișierului.
ffmpeg -i intrare.mp4 -c:v libx264 -preset veryslow iesire.mp4
-b:v (Bitrate video și constrângeri) Setează rata țintă de biți pentru fluxul video, plafonul maxim și memoria tampon a decodorului.
ffmpeg -i intrare.mp4 -c:v libx264 -b:v 4M -maxrate 4.5M -bufsize 8M iesire.mp4
-pix_fmt (Format pixeli și subeșantionare) Stabilește spațiul de culoare, subeșantionarea cromatică și adâncimea de culoare (8 biți vs 10 biți).
ffmpeg -i intrare.mp4 -c:v libx264 -pix_fmt yuv420p iesire.mp4
-g și -keyint_min (Interval GOP / Cadre cheie) Stabilește distanța maximă și minimă dintre cadrele cheie I-Frames (Group of Pictures).
ffmpeg -i intrare.mp4 -c:v libx264 -g 60 -keyint_min 60 -sc_threshold 0 iesire.mp4

Encodare și procesare audio (8)

Funcție Ce face
-c:a aac (Codec audio AAC) Standardul universal de compresie audio Advanced Audio Coding pentru web și dispozitive mobile.
ffmpeg -i audio.wav -c:a aac -b:a 192k audio.m4a
libmp3lame (Codec MP3) Popularul encoder LAME pentru generarea fișierelor audio clasice MP3.
ffmpeg -i intrare.wav -c:a libmp3lame -q:a 2 iesire.mp3
libopus (Codec audio Opus) Cel mai eficient și modern codec audio din lume, ideal pentru streaming, Discord și voce la bitrate minim.
ffmpeg -i intrare.wav -c:a libopus -b:a 128k iesire.opus
-ar și -ac (Rată de eșantionare și canale) Stabilește frecvența de eșantionare în Hertz (-ar) și numărul de canale audio (-ac: 1 mono, 2 stereo).
ffmpeg -i intrare.wav -ar 48000 -ac 2 iesire.mp3
-an și -vn (Eliminare stream-uri) Dezactivează complet înregistrarea stream-ului audio (-an) sau a stream-ului video (-vn).
ffmpeg -i video.mp4 -an video_fara_sunet.mp4
-af volume (Ajustare volum audio) Amplifică sau reduce nivelul sonor al semnalului audio (multiplicator sau decibeli).
ffmpeg -i intrare.mp4 -af "volume=1.5" -c:v copy iesire.mp4
-af loudnorm (Normalizare EBU R128) Normalizarea profesională a sonorității conform standardelor europene de broadcast EBU R128 și streaming.
ffmpeg -i intrare.mp4 -af loudnorm -c:v copy -c:a aac -b:a 192k iesire.mp4
-af silenceremove (Eliminare pauze / liniște) Detectează și elimină automat pauzele și momentele de liniște de la început, mijloc sau final.
ffmpeg -i podcast.mp3 -af "silenceremove=start_periods=1:start_duration=1:start_threshold=-50dB:stop_periods=-1:stop_duration=1:stop_threshold=-50dB" curat.mp3

Filtre video și manipulare cadre (10)

Funcție Ce face
-vf scale (Redimensionare video) Scalează rezoluția video la dimensiunile dorite păstrând sau forțând raportul de aspect.
ffmpeg -i intrare.mp4 -vf "scale=1280:720" -c:a copy 720p.mp4
-vf crop (Decupare zonă cadru) Decupează o secțiune dreptunghiulară din imagine și elimină barele negre (letterbox).
ffmpeg -i intrare.mp4 -vf "crop=w:h:x:y" iesire.mp4
-vf transpose (Rotire și flip) Rotește videoclipul cu 90 de grade în sensul acelor de ceasornic, invers sau efectuează reflexie în oglindă.
ffmpeg -i intrare.mp4 -vf "transpose=1" -c:a copy rotit_90.mp4
-vf fps (Modificare framerate) Forțează un număr constant de cadre pe secundă sau extrage cadre la intervale regulate.
ffmpeg -i intrare.mp4 -vf "fps=30" iesire_30fps.mp4
-vf pad (Adăugare margini / bare) Extinde pânza video adăugând margini negre sau colorate în jurul imaginii.
ffmpeg -i intrare.mp4 -vf "pad=1920:1080:(ow-iw)/2:(oh-ih)/2:black" iesire.mp4
-vf drawtext (Inscripționare text & timecode) Inscripționează text dinamic, numere de cadre, ceas sau timecode direct pe imaginea video.
ffmpeg -i intrare.mp4 -vf "drawtext=text='Dexblog.ro':x=20:y=20:fontsize=24:fontcolor=white" iesire.mp4
-vf setpts (Slow-motion și viteză) Modifică marcajele temporale ale cadrelor (Presentation Time Stamp) pentru efecte de slow-motion sau timelapse.
ffmpeg -i intrare.mp4 -vf "setpts=2.0*PTS" -an slow_motion.mp4
-vf thumbnail (Miniatură automată) Analizează un calup de cadre succesive și alege automat cel mai reprezentativ cadru ca imagine de copertă.
ffmpeg -i intrare.mp4 -vf "thumbnail=100" -frames:v 1 miniatura.jpg
-filter_complex (Grafuri de filtre) Permite construirea de grafuri avansate cu intrări multiple și ieșiri multiple pentru mixare audio-video.
ffmpeg -i video.mp4 -i logo.png -filter_complex "[0:v][1:v]overlay=10:10[out]" -map "[out]" -map 0:a iesire.mp4
overlay (Suprapunere logo / PiP) Suprapune o imagine transparentă (watermark/siglă) sau un al doilea clip video peste ecranul principal.
ffmpeg -i video.mp4 -i logo.png -filter_complex "overlay=W-w-10:10" iesire.mp4

Containere, fluxuri și metadate (8)

Funcție Ce face
-map (Mapare selectivă a fluxurilor) Selectează manual exact ce stream-uri de video, limbi audio sau subtitrări ajung în fișierul final.
ffmpeg -i film.mkv -map 0:v:0 -map 0:a:1 -c copy iesire.mp4
-movflags +faststart (Web Streaming) Mută indexul moov la începutul fișierului MP4 pentru a permite redarea instantanee în browser înainte de descărcare.
ffmpeg -i intrare.mp4 -c copy -movflags +faststart iesire.mp4
-metadata (Gestiune metadate) Citește, editează sau șterge complet etichetele de metadate (titlu, artist, an, drepturi de autor).
ffmpeg -i intrare.mp4 -metadata title="Titlu Nou" -metadata artist="Dexblog" -c copy iesire.mp4
-c:s (Subtitrări și conversie) Extrage, convertește și încorporează subtitrări comutabile (soft subs) sau arse în imagine (hardcode).
ffmpeg -i film.mkv -i subtitrare.srt -c copy -c:s mov_text film.mp4
concat demuxer (Lipire fișiere) Lipește mai multe segmente video într-un singur fișier continuu fără re-encodare.
ffmpeg -f concat -safe 0 -i lista.txt -c copy final.mp4
Generare GIF de înaltă calitate Generează imagini animate GIF fluide și clare folosind o paletă de 256 de culori optimizată matematic.
ffmpeg -i intrare.mp4 -filter_complex "[0:v]fps=15,scale=480:-1:flags=lanczos,split[s0][s1];[s0]palettegen[p];[s1][p]paletteuse" animatie.gif
Secvențe de imagini (Time-lapse) Transformă o serie de fotografii numerotate într-un videoclip fluid sau descompune un film în poze.
ffmpeg -framerate 30 -i cadru_%04d.png -c:v libx264 -pix_fmt yuv420p video.mp4
Segmentare automată (-f segment) Împarte automat un fișier video lung în segmente egale de timp fără re-encodare.
ffmpeg -i lung.mp4 -c copy -map 0 -segment_time 600 -f segment bucata_%03d.mp4

Streaming, accelerare hardware și inspecție (7)

Funcție Ce face
-f hls (HTTP Live Streaming) Generează playlist-ul m3u8 și segmentele video necesare pentru streaming adaptiv pe web și iOS/Android.
ffmpeg -i intrare.mp4 -c:v libx264 -c:a aac -f hls -hls_time 6 -hls_playlist_type vod -hls_segment_filename "segment_%03d.ts" stream.m3u8
-f flv (RTMP Live Streaming) Transmite fluxul video și audio în timp real către servere RTMP (YouTube Live, Twitch, Kick, Facebook).
ffmpeg -re -i video.mp4 -c:v libx264 -b:v 4500k -maxrate 4500k -bufsize 9000k -c:a aac -b:a 160k -f flv rtmp://a.rtmp.youtube.com/live2/cheie-secreta
h264_nvenc și hevc_nvenc (NVIDIA GPU) Encodare hardware de viteză extremă utilizând nucleele NVENC de pe plăcile video NVIDIA GeForce și RTX.
ffmpeg -hwaccel cuda -i intrare.mp4 -c:v h264_nvenc -preset p5 -b:v 5M iesire.mp4
h264_videotoolbox (Apple Silicon) Accelerarea hardware nativă pe procesoarele Apple Silicon (M1, M2, M3, M4) și plăci Mac.
ffmpeg -i intrare.mov -c:v h264_videotoolbox -b:v 5M iesire.mp4
ffprobe (Analiză și diagnosticare) Utilitarul complementar pentru inspecția detaliată a codecurilor, rezoluției, duratei și metadatelor fișierelor media.
ffprobe -v error -show_format -show_streams video.mp4
ffplay (Redare rapidă din consolă) Player multimedia minimalist și rapid pentru testarea imediată a fișierelor și fluxurilor de rețea.
ffplay video.mp4
Captură ecran și cameră web Înregistrează ecranul monitorului, camera web sau fereastra unei aplicații direct din terminal.
ffmpeg -f gdigrab -i desktop -c:v libx264 ecran.mp4