Brummton aus AudioFile loeschen

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...
Antworten
br_klaus
Beiträge: 244
Registriert: Do 21. Jan 2010, 22:33
OS, Lazarus, FPC: Windows Vista (L 0.9.31 FPC 2.5.1)
CPU-Target: 32Bit
Wohnort: z.z. Brasilien, sonst 82335 Berg-Leoni (südlich von München)

Brummton aus AudioFile loeschen

Beitrag von br_klaus »

Hallo,

gibt es eine Unit, mit der man aus einem Audio-File einen staendigen Brummton herausfiltern kann, sodass der verschwindet? Oder weiss jemand evtl. Freeware, die das machen kann?
Herzlichen Dank!

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Brummton aus AudioFile loeschen

Beitrag von wp_xyz »

Vielleicht mit http://antillasoft.com/main/en/mndescar ... gnalfilter (nicht getestet).

Ansonsten müsstest du deine Audiodatei Fourier-transformieren - das geht (von einer selbstgeschriebenen FFT-Routine abgesehen) z.B. mit der BASS.dll. Dann müsstest du den 50Hz-Peak weginterpolieren und dann alles wieder zurücktransformieren. Zur BASS.dll findest du sicher hier oder im Delphi-Forum Beispiele.

[EDIT] Oder versuch's mit "uos" (United Open Lib of Sound) - https://github.com/fredvs. Das Demoprogramm "Filterplayer" implementiert verschiedene Filterungen während der Wiedergabe. Zu der Lib gibt es einige Diskussionen im englischen Lazarus-Forum.

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Brummton aus AudioFile loeschen

Beitrag von mse »

Ein möglicherwiese adaptives IIR-Filter ist vermutlich besser geeignet. Falls im Brumm auch Oberwellen vorkommen, könnte man auch ein Kamm-Filter versuchen.

br_klaus
Beiträge: 244
Registriert: Do 21. Jan 2010, 22:33
OS, Lazarus, FPC: Windows Vista (L 0.9.31 FPC 2.5.1)
CPU-Target: 32Bit
Wohnort: z.z. Brasilien, sonst 82335 Berg-Leoni (südlich von München)

Re: Brummton aus AudioFile loeschen

Beitrag von br_klaus »

Das scheint ja alles ziemlich kompliziert zu sein.
Gibt es denn keine Möglichkeit, eine Audiodatei, ähnlich wie man in einer Bilddatei (durch Konverierung in eine Bitmap) die einzelnen Pixel ansprechen kann, in digitale Frequenzen aufzulösen, so daß man für jeden Moment das ganze Frequenzspektrum vor Augen hat und da dann die entsprechenden Brummtöne herausfiltern kann. Erst einmal suchen, an einer Stelle, die eigentlich stumm sein sollte. Dann weiß man schon, welche (Ober-) Töne herausgefiltert gehören.
Aber vielleicht denke ich da zu naiv...

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Brummton aus AudioFile loeschen

Beitrag von mse »

br_klaus hat geschrieben:Das scheint ja alles ziemlich kompliziert zu sein.

Da hast du leider sehr recht...
Gibt es denn keine Möglichkeit, eine Audiodatei, ähnlich wie man in einer Bilddatei (durch Konverierung in eine Bitmap) die einzelnen Pixel ansprechen kann, in digitale Frequenzen aufzulösen, so daß man für jeden Moment das ganze Frequenzspektrum vor Augen hat und da dann die entsprechenden Brummtöne herausfiltern kann.

Doch, das ist die von wp_xyz erwähnte Fourier-Transformation. Die kann aber die Audiodaten nur stückweise transformieren. Daraus wieder ein gutes kontinuierliches Signal im Zeitbereich rückzutransformieren ist schwierig und auch sehr rechenintensiv. Daher der Vorschlag mit dem IIR-Bandsperr-Filter das im Zeitbereich arbeitet. MSEgui stellt für Experimente mit digitaler Signalverarbeitung die Komponenten in der Palette 'Math' zur Verfügung.
Dateianhänge
sigcomponents.png

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: Brummton aus AudioFile loeschen

Beitrag von wp_xyz »

Willst du's nicht vielleicht zuerst mit einem fertigen Programm probieren? Audacity hat, glaube ich, ein Notch-Filter.

Antworten