Anpassen von Audio mit unterschiedlicher Lautstärke (aufgenommene Gespräche) mit FFMPEG

932
DDS

Ich muss einige Aufnahmen der Lektionen, die ich besucht habe, anpassen. Der Professor ging hier und da, aber mein Recorder war an einem festen Ort; Jetzt habe ich Audiospuren, die von laut zu Flüstern führen. Wie kann ich mit ffmpeg damit umgehen?

1

1 Antwort auf die Frage

2
slhck

Es gibt einige Möglichkeiten:

  • Wenden Sie eine einfache Normalisierung an (z. B. Peak- oder RMS-Normalisierung ). Dadurch wird nur die Verstärkung in der gesamten Datei geändert, sodass Sie immer noch Variationen zwischen lauten und weichen Parts feststellen können. Nicht wirklich für Ihren Anwendungsfall empfohlen.

  • Verwenden Sie die dynamische Komprimierung mit dem compandFilter. Dies verringert den dynamischen Bereich (dh den Unterschied zwischen leisen und lauten Teilen) während der gesamten Aufnahme. Sie müssen eine geeignete Schwelle finden, bei der die Komprimierung einsetzt, und Sie erhalten höchstwahrscheinlich ziemlich laute Signale für die Soft Parts.

  • Verwenden Sie den dynaudnormFilter, der „die Verstärkung der„ ruhigen “Abschnitte des Audiomaterials ermöglicht, ohne Verzerrungen zu vermeiden oder die„ lauten “Abschnitte abzuschneiden.“ In Ihrem Fall wäre dies die bevorzugte Option.

Im Grunde müssen Sie nur einen aktuellen statischen Build von ffmpeg von hier herunterladen und dann ausführen:

ffmpeg -i input.wav -filter:a "dynaudnorm" output.wav 

Sie werden höchstwahrscheinlich die Filteroptionen für Ihren speziellen Anwendungsfall anpassen müssen. Verwenden Sie die Beispiele für den compandFilter als Ausgangspunkt:

Machen Sie Musik mit leisen und lauten Passagen, die für das Hören in einer lauten Umgebung geeignet sind:

compand=.3|.3:1|1:-90/-60|-60/-40|-40/-30|-20/-20:6:0:-90:0.2 

Ein weiteres Beispiel für Audio mit Flüstern und Explosionsteilen:

compand=0|0:1|1:-90/-900|-70/-70|-30/-9|0/-3:6:0:0:0 

Die Optionen des zweiten Beispiels sind hier insbesondere:

attacks=0|0 decays=1|1 points=-90/-900|-70/-70|-30/-9|0/-3 soft-knee=6 gain=0 volume=0 delay=0 

Sie können die Verstärkung anpassen, um die gleiche dynamische Verarbeitung beizubehalten, sie jedoch an Ihren Baselineingangspegel anzupassen.

Als grafische Alternative zu ffmpeg können Sie auch Audacity und den eingebauten Kompressor verwenden, der denselben Effekt wie der compandFilter in ffmpeg erzielt . Das Wiki hat auch eine ziemlich gute Erklärung für die Optionen.