Skip to content

Cum să folosești sidechain compression audio cu FFmpeg

DodaTech Updated 2025-01-15 2 min read

In this tutorial, you'll learn about Cum să folosești sidechain compression audio cu FFmpeg. We cover key concepts, practical examples, and best practices.

Problema

Vrei ca un stream audio să se reducă automat când alt stream audio este prezent (de exemplu, muzica de fundal să scadă în volum când cineva vorbește). Sidechain compression-ul din FFmpeg face exact acest lucru.

Soluția Rapidă

Fix 1: Sidechain compression cu două fișiere audio

GREȘIT — amesteci cele două streamuri fără compresie:

ffmpeg -i music.mp3 -i voice.mp3 -filter_complex "amix=inputs=2:duration=longest" output.mp3
# (muzica rămâne la același volum tot timpul)

CORECT — folosește sidechaincompress:

ffmpeg -i music.mp3 -i voice.mp3 -filter_complex \
  "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress=threshold=0.015:ratio=4:attack=10:release=100[mixed];[mixed][mix]amix=inputs=2:duration=first:weights=1 0" \
  output.mp3

Fix 2: Sidechain compression simplificată

# Muzica se reduce când vocea este prezentă
ffmpeg -i music.mp3 -i voice.mp3 -filter_complex \
  "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress=threshold=0.02:ratio=10:attack=5:release=50[comp]" \
  -map "[comp]" -map "[mix]" output.mp3

Fix 3: Sidechain cu parametri ajustați

# Threshold mai sensibil, release mai lung
ffmpeg -i music.mp3 -i voice.mp3 -filter_complex \
  "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress=threshold=0.01:ratio=8:knee=0.3:attack=3:release=150[comp]" \
  -map "[comp]" output.mp3

Fix 4: Sidechain video + audio (voiceover)

ffmpeg -i video.mp4 -i voiceover.mp3 -filter_complex \
  "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress=threshold=0.02:ratio=6:attack=10:release=200[comp];[comp][mix]amix=inputs=2:duration=first" \
  -c:v copy output.mp4

Fix 5: Sidechain cu reducere extremă

# Voiceover reduce muzica aproape complet
ffmpeg -i music.mp3 -i voice.mp3 -filter_complex \
  "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress=threshold=0.005:ratio=20:attack=1:release=300:makeup=0[comp]" \
  -map "[comp]" output.mp3

Fix 6: Testarea parametrilor de sidechain

# Afișează nivelul de compresie în timp real
ffmpeg -i music.mp3 -i voice.mp3 -filter_complex \
  "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress=threshold=0.02:ratio=4:attack=10:release=100:level_sc=true[comp]" \
  -map "[comp]" output.mp3

Folosește DodaTech Audio Compressor pentru a vizualiza și ajusta parametrii de sidechain în timp real.

Prevenție

  • Ajustează threshold în funcție de nivelul semnalului de control.
  • attack și release controlează cât de rapid reacționează compresorul.
  • ratio determină cât de mult se reduce volumul.
  • Testează cu parametri diferiți pentru rezultatul dorit.

Greșeli Comune cu Sidechain Compression

  1. Threshold prea ridicat — compresorul nu se activează niciodată.
  2. Attack prea lent — muzica nu scade suficient de repede când începe vocea.
  3. Release prea scurt — muzica revine brusc, creând un efect de pompare enervant.

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 aplică sidechain compression între un fișier de muzică și un voiceover, cu threshold 0.01, ratio 6, attack 5ms și release 150ms.

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

FAQ

### Ce este sidechain compression-ul?

Sidechain compression reduce volumul unui stream audio (de exemplu, muzica de fundal) atunci când alt stream (vocea) depășește un prag, creând un mix mai clar și mai profesional.

Care este diferența dintre compresia normală și sidechain?

Compresia normală reduce volumul aceluiași semnal pe care îl analizează. Sidechain-ul folosește un semnal extern (de control) pentru a decide când să reducă alt semnal.

Ce parametri sunt cei mai importanți?

threshold (pragul de activare), ratio (cât de mult se reduce), attack (viteza de reacție) și release (cât durează revenirea). Începe cu threshold=0.02, ratio=4, attack=10, release=100 și ajustează de acolo.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro