![]() |
AW: Frequenzfilter mit hoch und Tiefpass
Ich habe allerdings noch ein Problem:
Ich rufe von delphi aus dem Copy-Befehl von cmd.exe auf, aber er kopiert nicht sondern öffnet die Eingabeaufforderung und wechselt das Verzeichnis in das Verzeichnis wo die Datei liegt und Sox ändert auch nicht die Datei, sondern das Fenster verschwindet sofort wieder und es tut sich nix:
Delphi-Quellcode:
Was habe ich falsch gemacht?
shellexecute(0,'open', 'cmd.exe',Pchar ('copy' + opendialog1.filename + '"C:\sox-14-4-0\Rohversion.wav"'),nil,SW_NORMAL);
ShellExecute(0,'open', 'C:\sox-14-4-0\sox.exe', PChar('"Rohzustand.wav" "Lowcut.wav" lowcut ' + inttostr(Frequenz) + ' 0.707q'),nil,SW_NORMAL); |
AW: Frequenzfilter mit hoch und Tiefpass
|
AW: Frequenzfilter mit hoch und Tiefpass
Vielleicht etwas spät aber dümmer wird man nicht:
Soweit ich mich erinnern kann, mußt Du zuerst vom Zeitbereich (WAV, MP3, o.ä.) in den Frequenzbereich (Spektrum) transformieren. Dazu dient z.B. eine FFT. Das dann vorliegende Array enthält die Amplituden der einzelnen Frequenzen. Natürlich immer nur für einen kurzen Zeitraum. Dann kannst Du darüber Deine Bandfilterkurve legen (Amplitudenwerte mit Durchlaßkurve multiplizieren). Dann wieder zurüch in den Zeitbereich transformieren (keine Ahnung, ob das auch mit ner FFT geht, in die Richtung hab ichs noch nie gemacht) und das Ergebnis müßte dann die frequenzbeschnittene WAV, MP3, ... sein. Viel Glück. Fertigen Quelltext hab ich natürlich nicht :-) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz