FFmpeg Audio-Phasenumkehrung

1234
Asotos

Ich schreibe ein Skript, das eine Reihe von Operationen für mehrere .wavDateien ausführt . Eine der Operationen ist die Phasenumkehrung (aus meiner Sicht eine Phasenverschiebung um 180 Grad).

Ist das mit FFmpeg möglich und wenn ja, welchen Schalter muss ich verwenden?

Nebenbei: Ich habe einen möglichen Weg gefunden, die Phase mit SOX umzukehren, hier https://stackoverflow.com/questions/31682730/sound-sox-how-can-i-make-a-180-degrees-phase-shifted- Version-of-an-Audio-Datei (obwohl ich den Lautstärkeschalter verwende, ist mir ein Rätsel), aber nachdem ich mehrere Stunden damit verbracht habe, dies mit FFmpeg herauszufinden, würde ich trotzdem gerne wissen, ob es möglich ist.

0

1 Antwort auf die Frage

2
Gyan

Um die Phase umzukehren, müssen Sie den aevalFilter verwenden.

ffmpeg -i input.wav -af "aeval='-val(0)':c=same" output.wav 

val(0)verweist auf den ersten Kanal. Das Zeichen -ve kehrt die Phase um. c=samebehält das Eingangskanal-Layout (in der Ausgabe) bei.

Vielen Dank! Das scheint zu funktionieren. Ich testete, indem ich ein Original ".wav" mit einem verarbeiteten mischte und sie wie erwartet abbrachen. Eine andere Möglichkeit, dies zu tun, scheint folgende zu sein: `ffmpeg -i input.wav -af pan =" 1c: c0 = -1 * c0 "-ac 1 output.wav`, aber ich finde die` aeval`-Methode einfacher Prozess (für mein Gehirn, das ist). Asotos vor 8 Jahren 0
Quelle der vorherigen Methode: http://ffmpeg.gusari.org/viewtopic.php?f=11&t=2806&p=8414 Asotos vor 8 Jahren 0
Der Vorteil der "aeval" -Methode besteht darin, dass sie weiterhin funktioniert, wenn Sie das Kanallayout der Quelle nicht kennen. Gyan vor 8 Jahren 0
Dies wird wahrscheinlich nützlich sein, da ich nicht einmal weiß, mit wie vielen Kanälen ich mich befassen muss. Asotos vor 8 Jahren 0