Macro zur Spectral-Anzeige für Frequenzen

Fragen und Antworten, Beispiele

Moderator: herw

Antworten
Benutzeravatar
saXist
synthesist
Beiträge: 83
Registriert: 6. November 2007, 21:21
Wohnort: kÖln
Kontaktdaten:

Macro zur Spectral-Anzeige für Frequenzen

Beitrag von saXist »

Hallo Reaktor´en,

seit 7´07 beschäftige ich mich mit R5, bin zZ bei einem Hindernis angekommen, dass ich nicht alleine mit der BA lösen kann.

Ich suche ein Macro, dass ein Spectral-Analysator, für ein Audio-Signal graphisch darstellt. Es sollet die Bandbreite von 20-20kHz und min. 20 Messpunkte anzeigt. Balkenanzeige ist möglich.

Habe schon mal mit harten Bandpassfiltern und einer in Reihe geschalteten Amplituden-Balkenanzeige angefangen. Dann 20 dieser Kombinationen im zu einander verstimmten Zustand parallel – KLAPPT, aber schwachsinniger Aufwand und zu viel Prozessor-Bedarf.

Hat einer von euch ne bessere Idee?
... DER saXist
Benutzeravatar
herw
moderator
Beiträge: 3122
Registriert: 13. März 2006, 18:28
Wohnort: Dortmund

Re: Macro zur Spectral-Anzeige für Frequenzen

Beitrag von herw »

saXist hat geschrieben:Hallo Reaktor´en,

seit 7´07 beschäftige ich mich mit R5, bin zZ bei einem Hindernis angekommen, dass ich nicht alleine mit der BA lösen kann.

Ich suche ein Macro, dass ein Spectral-Analysator, für ein Audio-Signal graphisch darstellt. Es sollet die Bandbreite von 20-20kHz und min. 20 Messpunkte anzeigt. Balkenanzeige ist möglich.

Habe schon mal mit harten Bandpassfiltern und einer in Reihe geschalteten Amplituden-Balkenanzeige angefangen. Dann 20 dieser Kombinationen im zu einander verstimmten Zustand parallel – KLAPPT, aber schwachsinniger Aufwand und zu viel Prozessor-Bedarf.

Hat einer von euch ne bessere Idee?
schau mal in der user library nach beim großen Meister Stefan Schmitt (Chef von NI):
Ez FFT Christmas Collection v1.4. Dort gibt es einige Tools. Der CPU-Verbrauch ist natürlich immens und man braucht viel Erfahrung, um dies CPU-verträglich zu gestalten.
Benutzeravatar
saXist
synthesist
Beiträge: 83
Registriert: 6. November 2007, 21:21
Wohnort: kÖln
Kontaktdaten:

Beitrag von saXist »

danke!
Jetzt weiss ich auch warum "Meister" Stefan Schmitt...
Finde ich klasse, aber mein kleiner DELL-Schleppi-CPU sagt deutlich "NEIN".

Eine einfachere Balkenanzeige würde es für den Anfang auch schon tuhen. Mir geht es bei dieser Anwendung um eine kontrollierteren Filtereinsatz.

Ev. hat jemand eine CPU-Schohnendere Idee, oder einen Ideen-Ansatz, den ich dann verfolgen kann.
... DER saXist
Benutzeravatar
saXist
synthesist
Beiträge: 83
Registriert: 6. November 2007, 21:21
Wohnort: kÖln
Kontaktdaten:

Beitrag von saXist »

Ahh, es funktioniert BEINAHE :evil:

Der 4BP-Filter ist mir aber noch nicht Steilflankig genug. (Wie war das noch, Filter in Reihe - addiert die Flankensteilheit? Muss noch mal die verstaubten Fachbücher raus holen)

Und zu breit. Besser HP und TP in Reihe, mit "Control" zum schmalen Band!

Ausserdem resoniert er im höheren Frequenz-Bereich. Bin aber noch nicht fhinter dieses Phenomen gekommen. Muss vermutlich auf Core-Filter, wegen Geauigkeit und Schnelligkeit, umsteigen.
... DER saXist
Benutzeravatar
toxonic
synth professor
Beiträge: 322
Registriert: 2. Januar 2007, 20:46
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von toxonic »

jo, zwei 24 db/oktave filter in reihe ergeben 48 db/oktave u.s.w. - so kann man das machen!
das die filter in bestimmten frequenzbereichen instabil werden, ist wohl bauartbedingt, da es sich bei den herkömmlichen reaktor filtern um iir-filter handelt (infinite impulse response) die auf einer feedback schleife von unit delays basieren - ich hab sowas sporadisch mal ausprobiert selber mit unit delays zu bauen, hat funktioniert.......
wenn du filter mit abartiger flankensteilheit brauchst und die in jeder frequenz stabil sind, musst du wohl auf die wesentlich cpu-hungrigeren fir (finite impulse response) filter setzen, die nicht auf feedbackschleife basieren und daher garantiert bei jeder frequenz eine endliche impuls antwort haben!
kann sein, das es sowas auch in dem fft-pack gibt, hab das noch nicht....
ich hab irgendwann mal versucht mich mit dem thema filter auseinanderzusetzen, hab dann aber rasch aufgegeben, weil's ein echt kompliziertes thema ist - da hab ich irgendwann nix mehr verstanden!
vielleicht hast du mehr erfolg, lass es mich wissen!
Benutzeravatar
saXist
synthesist
Beiträge: 83
Registriert: 6. November 2007, 21:21
Wohnort: kÖln
Kontaktdaten:

Beitrag von saXist »

Hallo REAKTORen,

mit meiner Frequenzspektrum-Balkenanzeige bin ich schon etwas weiter gekommen. Es funktioniert - leider nicht so, wie ich es mir vorstelle!

Folgend: Panel-Ansicht
071204_DetailAnsicht_frequspektpanel.jpg
Zwei Probleme sind aufgetaucht;

(1)
Unkorrekter Amplitudenanstieg der Anzeige im oberen Frequenzbereich ab ca. 6kHz (rechte Bänder).
Es besteht hierbei eine Abhängigkeit von der REAKTOR-Taktfrequenz (Sample Rate). Der Fehler ist bei einer Auflösung von 176,4kHz kleiner als bei 44,1kHz. Die Frequenzform spielt dabei keine Rolle. Die Amplitudenhöhe wird in allen Frequenzbereichen gleich hoch generiert.

Folgend: Struktur-Übersicht
071204_DetailAnsicht_frequspektpanel.jpg
Mittiges Macro gibt die logarithmische Frequenzverteilung von 20-20kHz in 31 Bänder vor.
Folgend: Frequenz-Verteilung-Struktur
071204_DetailAnsicht_frequspektpanel.jpg
Die rechten Macro-Blöcke beinhalten jeweils 10Stk., 24db-Bandpass-Filterelemente, wobei die wegen der geringeren+einstellbaren Bandbreite, jeweils aus einem Hochpass und einem Tiefpassfilter in Reihe geschaltet sind.


Dieser Fehler zeigt sich auch bei einem einfachen Filter (6db-BP, nicht in Reihe), mit einfacheren Filtern aus dem Filter-Menü und ohne den "Log F-P" aus dem Mathe-Menü!

Ich vermute, dass die Filter ab einer bestimmten Höhe in Resonanz geraten (Eigenschwingung) und somit Oberwellen erzeugen, die dann am Ausgang anliegen.


(2)
Der obere Aufbau ist äusserst Aufwändig, mit seinen 62Stk. 24db-Filtern (31 Kanäle á 2Stk.24db-Filter-Macros). Das beansprucht eine Menge CPU-Leistung --- ZU VIEL!!!

Hat jemand (oder jefraud;-) eine Idee, wie man anders, CPU-Schohnender an dieses Problem herangehen kann?
Vermutlich wird das gleiche in "core-cells" genauer, aber NICHT einfacher werden…


SCHLUSSWORT:
Mein bestreben ist es auch, solche Macros selber zu erstellen, da ich durchs kopieren nie das Anfänger-Niveau überschreiten werde. Daher nutzen mir keine ni-Bibliotheken-Verknüpfungen zwechs Macro-Kopie.

Hallo toxonic - deine Infos haben mich eher an meinem Vorhaben zweifeln lassen, daher HOFFE ich auf einen Fehler in meiner Entwicklung... oder eine ganz andere Herangehensweise (ohne diese FilterMasse)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von saXist am 15. Januar 2008, 18:06, insgesamt 1-mal geändert.
... DER saXist
Benutzeravatar
toxonic
synth professor
Beiträge: 322
Registriert: 2. Januar 2007, 20:46
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von toxonic »

ich habe den verdacht, das du dir wohl einen entsprechenden filter in core selber bauen musst - viel spass! 8 )
also mein tip is eben, das thema fir-filter zu studieren! ich persönlich hab's aufgegeben, is mir zu komplizierte materie, ich bin handwerker ohne abi und hab keine lust mir meine knappe freizeit mit diskreter fourier transformation und ähnlichem hickhack um die ohren zu hauen! aber soweit ich vorgedrungen bin, scheint mir das der weg, den du einschlagen solltest! in d/a-wandlern zb. sind meines (halb)wissens nach solche steilflankigen tiefpass-filter eingebaut um alias-frequenzen jenseits der nyquist-frequenz auszufiltern! schau mal in wikipedia zum thema fir filter nach, da gibt'S bestimmt ne linksammlung, welche dir weiterhilft!

edit: btw... machbar is das ganz sicher in core, aber verabschiede dich von dem gedanken, das du sowas innerhalb eines tages hinbekommst! :lol: es gibt simple schematische darstellungen von irr un fir filtern, nen irr filter hab ich vom prinzip her mal in reaktor sleber gebaut, aber ohne wirklich zu wissen, wann ein filter z.b. 24 db flankensteilheit hat u.s.w..... aber machen kann man das schon, kostet aber sicher auch entsprechend cpu power, weil du bei nem fir filter mehr module brauchst als bei nem irr filter (eben wegen der entfallenden feedbackschleife)
Benutzeravatar
saXist
synthesist
Beiträge: 83
Registriert: 6. November 2007, 21:21
Wohnort: kÖln
Kontaktdaten:

Re: Macro zur Spectral-Anzeige für Frequenzen

Beitrag von saXist »

... puuuuhhhh --- da bin ich wieder!
Bin mal etwas intensiver in IRR- und FIR-Filtertechnik ein getaucht. ><:
Verstanden habe ich das Prizip - um weiter zu machen ist es mir zZ. zu Zeitraubend. Werde es erst mal bei Seite schieben, bis andere Ausser-Reaktoren-Projekte beendet sind!
Auch mit CORE habe ich mich beschäftig, was für mich wegen der CPU-Last keinen Sinn macht (trotz NachWeihnachten! - können die Christkinder von heute keine Wunschzettel mehr lesen??? :evil: )

Danke aber für Eure Denkanstösse
... DER saXist
Antworten