AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Maus Messages an VST-Plugin senden?

Ein Thema von supermuckl · begonnen am 19. Jul 2010 · letzter Beitrag vom 21. Jul 2010
Antwort Antwort
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#1

Maus Messages an VST-Plugin senden?

  Alt 19. Jul 2010, 23:45
Hi!
Ich bin an einem größeren Projekt dran und möchte gerne wissen, wie ich ein VST-Plugin, daß das handle eines Panels als parent nimmt(als Anzeige), dazu bringen kann, daß ich mausaktionen direkt an das Plugin senden kann?
Also im Grunde genommen möchte ich

1. VST Plugin nicht anzeigen (kein Visuelles Fenster)
und dieses
2. Über netzwerk mit Mouseeingaben steuern können (Click, Move usw)

Derzeit hab ich es unglücklich gelöst, indem ein Form mit einem Panel drauf - und das Plugin als child des Panels als "Gui" übernimmt und die Maus per systemweite mouse commands gesteuert wird - das ist unschön und ich kann auch nicht mehrere plugins gleichzeitig übers netzwerk steuern, weil es ja nur eine Maus gibt

Die Visuelle Rückmeldung funktioniert via "Render to Bitmap" und dann per PNG verschickt - das ist atm kein Problem.

Was ich bisher ausprobier habe sind per "postmessage" - messages an das handle des plugins zu senden (ist child des panels)
es geht auch TEILWEISE - es werden clicks angenommen - aber moves und clicks auf manche grafischen knöpfe des plugins werden nicht übernommen
mit winsight zeigt es mir auch massenhaft messages an wie "WM_MOUSELEAVE" was wohl das ganze auch zum wackeln bringt, wenn die mouse neben dem fenster sitzt
im prinzip müsste ich alle mousemessages an das VST plugin abfangen und "vergessen" und dann meine eigenen mouse messages an das handle schicken
ein wndproc überschreiben des panels hat irgendwie nicht funktioniert - ich kann das plugin auf dem "hostrechner" trotzdem per maus steuern wie gehabt

hier hab ich die wndproc überschrieben - was wohl nicht funktioniet:
Delphi-Quellcode:

  type Tpanel2 = class(Tpanel)
    public
    procedure WndProc(var Message: TMessage); override;
  end;


procedure Tpanel2.WndProc(var Message: TMessage);
begin
  case message.Msg of
   WM_MOUSEMOVE: exit;
    WM_MOUSELEAVE: exit;
    WM_LBUTTONDOWN: exit;
    WM_LBUTTONup: exit;
    WM_RBUTTONDOWN: exit;
    WM_RBUTTONup: exit;
    WM_CHILDACTIVATE: exit;
  end;

   inherited WndProc(Message);
end;
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!

Geändert von supermuckl (19. Jul 2010 um 23:52 Uhr)
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#2

AW: Maus Messages an VST-Plugin senden?

  Alt 19. Jul 2010, 23:52
Du meinst ein Cubase-VST Plugin?

Wenn ja, wieso steuerst du das ganze nicht per MIDI an? Dann kann man z.B. auch externe Controller / HUI's verwenden.
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Maus Messages an VST-Plugin senden?

  Alt 19. Jul 2010, 23:53
weil nicht alle VST plugins eine automatisierung aller parameter per midi können
und menüs per midi nicht anklickbar sind
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#4

AW: Maus Messages an VST-Plugin senden?

  Alt 19. Jul 2010, 23:54
Über SYSEX geht alles
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Maus Messages an VST-Plugin senden?

  Alt 19. Jul 2010, 23:56
ähm nein.
nochmals:
du musst solche sachen ausprogrammieren als plugin programmierer
ergo gibt es plugins die das nicht machen
ausserdem gehen keine menüs, die nur auf klick reagieren auf

hast du eine lösung?
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#6

AW: Maus Messages an VST-Plugin senden?

  Alt 20. Jul 2010, 00:03
Achso du willst ein fremdes VST steuern, ich dachte, du schreibst ein eigenes, sorry. Da könntest du so ziemlich alles über MIDI umschaltbar / auswählbar machen, aber so ist das natürlich ein Problem.

Mhm, nein, da fällt mir so schnell leider erstmal keine Lösung ein. Ich hab zwar auch mal ein paar VST's programmiert, aber ich hab das SDK nicht mehr so im Kopf (ehrlich gesagt gar nicht mehr)...

Klingt das irgendwie danach, als ob du einen mini VST-Host baust?
Zitat:
..aber moves und clicks auf manche grafischen knöpfe des plugins werden nicht übernommen
Haben die grafischen Knöpfe vielleicht ein eigenes Handle?
Nur so als Idee, wenn du die Children des Plugins iterierst und die Befehle direkt an diese schickst?

Geändert von blackfin (20. Jul 2010 um 00:07 Uhr)
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#7

AW: Maus Messages an VST-Plugin senden?

  Alt 20. Jul 2010, 00:06
jo
also nochmal zur erklärung
ich bin VST-Host und lade eine VST-DLL
und dieses handle klebt auf dem panel

und dieses vst-dll-handle soll keine "echten" messages mehr bekommen von der maus -
soll aber meine virtuell erzeugten mausaktionen per messages oder sonstwie "verdauen"

im prinzip kann man warscheinlich bei einer vst plugin - dll wie bei jeder anderen DLL mit oberfläche verfahren
aber wie?
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#8

AW: Maus Messages an VST-Plugin senden?

  Alt 21. Jul 2010, 06:45
*vorsichtigpush*

also eine normale DLL mit oberfläche müsste sich auch so verhalten
hat das nicht schonmal jemand machen müssen?
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz