Thema: Delphi Winmap FFT Daten ?

Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Winmap FFT Daten ?

  Alt 11. Aug 2009, 02:38
Was die Messages mit dem Pointer angeht: So wird's nicht gehen. Die DLL wird ja im Prozess von WinAmp gestartet, und hat somit den virtuellen Speicher mit WinAmp - nicht mit deinem Programm. Das heisst wenn du da jetzt einfach so einen Pointer rüber wirfst, zeigt der in deiner Prozessumgebung auf zufälligen Krams und wird höchstwahrscheinlich eine AV begünstigen.
Wenn nur via Messages, dann wie schon erwähnt mit WM_COPYDATA. Wobei ich ein MMF noch immer bevorzugen würde.

@FFT: Ich hab mal vor einiger Zeit mit einem mittlerweile veralteten Header gearbeitet. Dort war es dann so, dass man nich mit Funktionsaufrufen an WinAmp herangetreten ist, sondern man hat Pointer auf diverse Puffer übergeben - z.B. ein Array in das die FFT Daten sollen. Es gab da eine Hand voll Prozeduren die so eine DLL zu exportieren hatte, u.a. eine Init() die diese Dinge zu erledigen hat. Dann gibt's da noch eine "Render" Prozedur die von WinAmp dann aufgerufen wird, wenn es denkt dass sich dein Plugin mal neu zeichenen könnte. Das ist dann der Zeitpunkt zu dem du weisst dass deine Datenpuffer aktuell sind.
Ich vermute mal, dass sich an der grundlegenden Art und Weise nicht so arg viel getan hat.


PS: http://dev.winamp.com/plugin-developers. Da gibt's auch nen SDK. War jetzt nicht SO schwer zu finden
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat