Dies wird im Stack Overflow-Beitrag unter Verwendung von FFMPEG mit Silencedetect beantwortet , um die Stille von Audio zu entfernen .
Die erste Bemerkung ist, dass Silencedectect die Stille nur erkennt, nicht aber entfernt. Sie sollten stattdessen den Schalldämpferfilter verwenden.
So stellen Sie fest, ob in Ihrer Version von ffmpeg dieser Filter ausgeführt wird:
ffmpeg -hide_banner -filters | grep silenceremove
Die Ausgabe sollte folgendermaßen aussehen:
silenceremove A->A Remove silence
Der Befehl zum Entfernen stiller Teile kann folgendermaßen aussehen:
ffmpeg -i input.mp3 -af silenceremove=1:0:-50dB output.mp3
Wenn der Parameter "Silenceremove" wie folgt entfernt wird:
- am Anfang (durch das erste Argument angegeben
1
) - mit minimaler Länge Null (durch das zweite Argument angegeben
0
) - Schweigen wird als alles unter -50 Dezibel eingestuft (angezeigt durch
-50dB
)
Referenz: FFMPEG Silence Filter entfernen .
Um den richtigen Wert für die Stille zu finden, normalisieren Sie zunächst die Eingangslautstärke auf 0dB
, wie in dieser Antwort beschrieben .