Skip to content

Cum să păstrezi raportul de aspect la redimensionare cu FFmpeg

DodaTech Updated 2025-01-15 2 min read

In this tutorial, you'll learn about Cum să păstrezi raportul de aspect la redimensionare cu FFmpeg. We cover key concepts, practical examples, and best practices.

Problema

La redimensionare, raportul de aspect (aspect ratio) al videoclipului se distorsionează dacă nu este păstrat corect. O imagine întinsă sau comprimată pe orizontală/verticală degradează experiența vizuală.

Soluția Rapidă

Fix 1: Păstrarea automată a raportului

GREȘIT — valori fixe care distorsionează:

ffmpeg -i input.mp4 -vf "scale=1280:720" output.mp4
# Dacă inputul este 4:3, rezultatul 1280x720 (16:9) va distorsiona

CORECT — folosește -1 pentru calcul automat:

ffmpeg -i input.mp4 -vf "scale=1280:-1" output.mp4
# Păstrează raportul, calculează înălțimea automat

ffmpeg -i input.mp4 -vf "scale=-1:720" output.mp4
# Păstrează raportul, calculează lățimea automat

Fix 2: Valori pare obligatorii

GREȘIT — valorile impare cauzează erori la codecuri:

ffmpeg -i input.mp4 -vf "scale=1920:1081" output.mp4
# "height not divisible by 2" (eroare la encoder)

CORECT — folosește force_original_aspect_ratio și eval=frame:

ffmpeg -i input.mp4 -vf "scale=1280:720:force_original_aspect_ratio=decrease" output.mp4

# Sau asigură-te că valorile sunt pare
ffmpeg -i input.mp4 -vf "scale='trunc(oh*a/2)*2:720'" output.mp4

Fix 3: Raport 4:3 → 16:9 cu padding

# Adaugă bare laterale negre pentru a menține raportul
ffmpeg -i input.mp4 -vf "scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2" output.mp4

Fix 4: Raport 16:9 → 4:3 (letterbox)

# Adaugă bare sus-jos
ffmpeg -i input.mp4 -vf "scale=720:480:force_original_aspect_ratio=decrease,pad=720:480:(ow-iw)/2:(oh-ih)/2" output.mp4

Fix 5: Verificarea raportului de aspect

ffprobe -v error -select_streams v:0 -show_entries stream=display_aspect_ratio -of csv=p=0 input.mp4
# Ieșire: 16:9

Folosește DodaTech Aspect Ratio Calculator pentru a determina dimensiunile corecte pentru orice raport de aspect.

Prevenție

  • Folosește -1 pentru a păstra raportul de aspect automat.
  • Asigură-te că dimensiunile sunt pare pentru codecurile H.264/H.265.
  • Folosește force_original_aspect_ratio=decrease când încadrezi în dimensiuni specifice.
  • Verifică raportul de aspect original cu ffprobe.

Greșeli Comune cu Aspect Ratio

  1. Valori impare la dimensiuni — codecurile H.264/H.265 necesită dimensiuni pare.
  2. Ignorarea raportului de aspect original — scalarea la valori fixe fără calcul automat distorsionează imaginea.
  3. Confuzia între DAR (Display Aspect Ratio) și SAR (Sample Aspect Ratio) — DAR este raportul afișat, SAR este raportul pixelilor.

Aceste greșeli apar frecvent în cod FFmpeg real. Contribuitorii DodaTech au identificat aceste patternuri prin analiza proiectelor open-source și a sistemelor de producție.

Exercițiu Practic

Scrie o comandă FFmpeg care redimensionează un video 4:3 la 1920x1080 (16:9) păstrând raportul original și adăugând bare laterale negre.

Acest exercițiu întărește conceptele acoperite în acest ghid. Încearcă să-l implementezi înainte de a verifica soluțiile online.

FAQ

### Ce se întâmplă dacă nu păstrez raportul de aspect?

Imaginea va fi distorsionată: cercuri devin ovale, fețele par întinse sau comprimate. Player-ul poate corecta, dar calitatea percepută scade.

Care este diferența dintre -1 și force_original_aspect_ratio?

-1 calculează automat dimensiunea lipsă. force_original_aspect_ratio=decrease scalează pentru a încadra în dimensiunile specificate, adăugând padding dacă este necesar.

Cum corectez un raport de aspect greșit din fișier?

Dacă metadatele SAR/DAR sunt incorecte, poți seta raportul corect cu -aspect 16:9 fără a re-encodinga: ffmpeg -i input.mp4 -c copy -aspect 16:9 output.mp4.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro