Cum să negatezi culorile video cu FFmpeg
In this tutorial, you'll learn about Cum să negatezi culorile video cu FFmpeg. We cover key concepts, practical examples, and best practices.
Problema
Vrei să creezi efectul de film negativ sau să inversezi culorile unui video pentru un efect artistic. Filtrul negate din FFmpeg inversează canalele video, dar rezultatul poate fi neașteptat.
Soluția rapidă
Fix 1: Negate Simplu
GRESIT — aplicarea negate care inversează și canalul alpha:
ffmpeg -i input.mp4 -vf "negate" output.mp4
# (inversează toate canalele, inclusiv alpha dacă există)
CORECT — negate cu parametrii corecți:
ffmpeg -i input.mp4 -vf "negate=negate_alpha=0" output.mp4
# negate_alpha=0 păstrează canalul alpha neschimbat
Fix 2: Negate cu Grayscale (Alb-Negru Negativ)
# Mai întâi conversia la grayscale, apoi negate:
ffmpeg -i input.mp4 -vf "hue=s=0,negate" output.mp4
# hue=s=0 desaturează, negate inversează
Fix 3: Negate Componentă
# Negate doar pe un canal specific (cu lut):
ffmpeg -i input.mp4 -vf "lut=val=255-val" output.mp4
# Echivalent cu negate, dar controlabil pe fiecare canal
Fix 4: Efect Mix (Jumătate Negativ, Jumătate Normal)
ffmpeg -i input.mp4 -filter_complex \
"[0:v]split[a][b]; [a]negate[neg]; [b]boxblur=2:1[blur]; \
[neg][blur]hstack[out]" \
-map "[out]" output.mp4
# hstack pune negativul lângă original pentru comparație
Fix 5: Negate cu Luminozitate Ajustată
# După negate, ajustează luminozitatea pentru un efect mai plăcut:
ffmpeg -i input.mp4 -vf "negate,eq=brightness=0.1:contrast=1.2" output.mp4
Fix 6: Interval Specific de Timp
# Aplică negate doar între secunde 5 și 15:
ffmpeg -i input.mp4 -vf "negate=enable='between(t,5,15)'" output.mp4
Folosește DodaTech's Video Effect Studio pentru a aplica efectul negativ și alte filtre creative.
Prevenție
- Folosește
negate_alpha=0pentru a păstra transparența. - Combină negate cu eq pentru ajustarea luminozității post-negare.
- Testează pe un singur frame înainte de procesarea completă.
- Folosește
enablepentru control temporal. - Pentru efect artistic, combină cu alte filtre precum curves sau colorbalance.
Greșeli comune
- Negatealpha neglijat — canalul alpha inversat produce transparență incorectă.
- Efect prea dur — negate singur poate fi prea puternic; combină cu eq.
- Fără ajustare luminozitate — negate produce culori spălăcite fără corecție.
- Negate pe video comprimat — artefactele de compresie devin evidente.
- Ordin greșit a filtrelor — negate înainte de colorbalance produce rezultate diferite.
Aceste greșeli apar frecvent în codul FFmpeg real. Contribuitorii DodaTech au identificat aceste modele prin analiza proiectelor open-source și a sistemelor de producție.
Exercițiu practic
Aplică efectul negativ pe un video între secundele 3 și 8, cu ajustare de contrast 1.3 după negare.
Acest exercițiu întărește conceptele prezentate în acest ghid. Încearcă să-l implementezi înainte de a verifica soluțiile online.
FAQ
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro