Python Programm für echo effekt auf .wav file

claudio26

Cadet 2nd Year
Registriert
Sep. 2017
Beiträge
19
Hallo zusammen

Ich hoffe ich bin hier richtig.

Ich habe mit Python ein programm erstellt, dass bei befehl eine Aufname übers Mikrofon startet, dass man dann mit ctlr + c beenden kann. Nachdem wird von der Aufnahme eine .wav datei erstellt.

Was ich nun gerne möchte, ist aus der Stimme die man aufgenommen hat einen echo effekt anwenden. Dafür könnte ich natürlich Audacity oder ein anderes Programm verwenden. Ich möchte es aber gerne automatisiert. Also so, dass ich die Datei öffne, den namen des .wav Files eingeben kann aufdem der effekt angewendet werden soll und es dann automatisch ein neues .wav File mit dem echo effekt erstellt.

Also z.B. erstelle ich die aufnahme "blabla.wav" öffne dann das Programm, gebe "blabla.wav" ein und es erstellt mir ein "blabla_echo.wav" file mit dem effekt drauf.

Die methode wie wie es gemacht wird (z.B. mit welcher Programmiersprache), ist mir eigentlich egal. Am besten kann ich Python. Verstehe aber auch C# und C++ gut, was für sowas vieleicht am besten ginge. Es könnte natürlich auch nur ein makro oder so sein, dass mir z.b. audacity öffnet, die gewünschte datei automatisch einfügt und automatisch ein echo effekt anwendet und es speichert. Wie man sowas aber anstellt, weis ich nicht.

Habe es schon mal mit C++ probiert. Jedoch ohne erfolg.

Wie gesagt ist es mir schlussendlich egal mit was es gemacht wird. Als user will ich einfach nicht mehr machen als das programm zu öffnen, den namen der Datei eingeben und das Programm wieder schliessen.

Ich hoffe ihr versteht was ich meine.

Ich bedanke mich schon mal für die Hilfe :)
 
Für den Echo-Effekt würde ich Dir

Sox

empfehlen.
Was Sox außer "Echo" noch so alles kann kannst Du Dir hier ansehen.
Wie die Parameter aussehen sollten findest Du in dieser Anleitung.

Um Sox aus Python heraus aufzurufen verwendest Du den

os.system() - Aufruf von Python, also sowas wie

Code:
import os
...
...

os.system('sox <Deine Parameter>')


HTH

BigNum
 
BigNum schrieb:
Für den Echo-Effekt würde ich Dir

Sox

empfehlen.
Was Sox außer "Echo" noch so alles kann kannst Du Dir hier ansehen.
Wie die Parameter aussehen sollten findest Du in dieser Anleitung.

Um Sox aus Python heraus aufzurufen verwendest Du den

os.system() - Aufruf von Python, also sowas wie

Code:
import os
...
...

os.system('sox <Deine Parameter>')


HTH

BigNum

Danke für die Antwort.

Das sieht nach dem richtigen aus. Habe es mal im cmd mit "sox voice.wav voice_echo.wav echo 0.8 0.9 1000 0.3" probiert. Es macht aber nur einen einfachen delay effekt. Also die stimme wiederholt sich einfach aber es wird nicht immer wie leiser.

Wie könnte ich das optimieren?
 
claudio26 schrieb:
Also die stimme wiederholt sich einfach aber es wird nicht immer wie leiser.
*kopfkratz*
Ich verstehe Dich so, daß Du mehrere Echos willst.
Das erreichst Du z.B. mit

Code:
sox in.wav out.wav echos 0.8 0.8 300 0.25 600 0.12 900 0.06 1200 0.03 1500 0.015

Ansonsten musst Du einfach ein bisschen mit sox herumexperimentieren...
Probier mal den "chorus" Befehl...


HTH

BigNum
 
BigNum schrieb:
*kopfkratz*
Ich verstehe Dich so, daß Du mehrere Echos willst.
Das erreichst Du z.B. mit

Code:
sox in.wav out.wav echos 0.8 0.8 300 0.25 600 0.12 900 0.06 1200 0.03 1500 0.015

Ansonsten musst Du einfach ein bisschen mit sox herumexperimentieren...
Probier mal den "chorus" Befehl...


HTH

BigNum

Wow das ist Perfekt :D

Das ist es was ich wollte. Danke viel viel mal für die hilfe!
 
Zurück
Oben