[Neues Plugin] Atmolight plugin (2 Viewers)

Grisu002

MP Donator
  • Premium Supporter
  • December 11, 2008
    370
    48
    München
    Home Country
    Germany Germany
    AW: [Neues Plugin] Atmolight plugin

    Kann ich auch bestättigen, läuft ohne Probleme

    :D
     

    Heimkinofan

    Portal Member
    March 2, 2008
    14
    0
    Home Country
    Germany Germany
    AW: [Neues Plugin] Atmolight plugin

    Hallo zusammen,

    erstmal vielen Dank an gemx für das plugin! Läuft super.
    :D

    Zwei Dinge sind mir aufgefallen, vielleicht bin ich ja nicht der einzige:
    - (1) Kanal oben und unten schein vertauscht
    - (2) Einstellungen werden nicht gespeichert.

    Zu (1):
    AtmoWin selbst zeigt bei mir die Kanäle richtig herum an, also oben auf dem Desktop blau = LED am Fernseher oben blau. Usw. Hardware ist also richtig angeschlossen.
    Über Mediaportal allerdings: Oben im Bild blau = LED unten am Fernseher blau. Also oben und unten sind vertauscht.
    Ich erinnere, dass Texturen immer spiegelverkehrt abgelegt/gerendert/... "was auch immer" werden, und vermute daher, dass beim Auslesen der Texture und dann rüberschicken via COM an AtmoWin die Textur noch verdreht ist. Kann das sein?

    Haben andere auch das Problem? (bitte einmal genau hinschauen... ist mir auch nicht sofort aufgefallen... bei cartoons geht das ganz schnell zu bemerken).

    Vorerst habe ich meine LED-Streifen vertauscht, da ich mehr über Mediaportal gucke. Aber es ist schon komisch, wenn man Mediaportal verlässt und dann *schwups* ist doch wieder alles verdreht.​

    Zu (2)
    Wenn ich unter "Mediaportal Configuration" im PlugIn die Einstellungen verändere, so dass zum vorigen AtmoWin-Modus zurückgekehrt wird (die Option-Boxen unten)... speichert er bei mir die Einstellung partout nicht.
    Und ja: Ich drücke ganz sicher auf "Speichern" und nicht versehentlich auf "Abbrechen". Das ist es also nicht. ;)


    Außerdem habe ich noch folgende zwei Fragen:
    (A)
    Da ich nebenbei auch gerne etwas entwickel, interessiere ich mich für den Source-Code vom PlugIn. Kannst Du, gemx, diesen zur Verfügung stellen?

    Im Kern möchte ich gerne sehen, wie Du mittels C# erfolgreich die COM-Schnittstelle von AtmoWin angesteuert bekommen hast. Das hatte ich nämlich letztes Wochenende zum Spaß ausprobieren wollen und bin gescheitert.​

    (B)
    Was fehlt eigentlich genau an Mediaportal, so dass wir eine extra für AtmoWin kompilierte DLL nutzen müssen?
    Folgefragen:
    • Wird die notwendige Anpassung in zukünftigen Mediaportal-Versionen per default vorhanden sein? (also sprich: auch im MP-Code eingebunden?)
    • Eigentlich braucht Mediaportal doch nur eine Schnittstelle, über die man das aktuelle Bild bzw. die aktuelle Textur auslesen kann, oder? Geht das heute noch gar nicht?


    Freue mich auf das Feedback!

    Viele Grüße,
    HeimKinoFan
     

    MacGyver2k

    Portal Pro
    October 29, 2005
    148
    64
    Home Country
    Germany Germany
    zu (1): ja sind vertauscht, sehr nervig bei nem 64-Kanal Atmolight bis man da ein eigenes Profil für angelegt hat mit den vertauschten Kanälen.
    Bei "oben" und "unten" ist afaik auch links und rechts vertauscht. Ich sichere mir jetzt immer die .reg-Keys damit ich mir die arbeit beim nächsten mal sparen kann...
    Wenn du dann halt Atmowin außerhalb von Mediaportal nutzen willst musste immer mit einem klick ein anderes Profil laden.

    zu(2): ka, nie genutzt ;)

    zu (A): in den Atmowin Sourcen ist ein Sample Com-CLient drin. Ich hab den mir nie angesehen, aber langt der nicht?
    http://www.primacom.net/~w6533344/atmowin/atmoWin_0.49_source.zip

    zu (B): Keine direkte Antwort auf deine Frage, aber afaik wird die Änderung nur für den "MP-Live-View" benötigt, da gemx da das Bild im Grafikspeicher verkleinert, was nen ordentlichen Performance-Boost gibt.
    die Änderungen der core.dll findest du hier: https://forum.team-mediaportal.com/...rt-incht-mehr-seit-mediaportal-1-1-1-a-87792/
     

    Heimkinofan

    Portal Member
    March 2, 2008
    14
    0
    Home Country
    Germany Germany
    AW: Re: [Neues Plugin] Atmolight plugin

    Erstmal vielen Dank für das erste Feedback!

    zu (1): ja sind vertauscht, sehr nervig bei nem 64-Kanal Atmolight bis man da ein eigenes Profil für angelegt hat mit den vertauschten Kanälen.
    Bei "oben" und "unten" ist afaik auch links und rechts vertauscht. Ich sichere mir jetzt immer die .reg-Keys damit ich mir die arbeit beim nächsten mal sparen kann...
    Wenn du dann halt Atmowin außerhalb von Mediaportal nutzen willst musste immer mit einem klick ein anderes Profil laden.
    Mmm. Ok. Ich täusche mich also nicht. Aber im Grunde muss die Texture vorm senden an AtmoWin dann nur einmal entlang der Horizontalen gespiegelt werden.

    zu (B): Keine direkte Antwort auf deine Frage, aber afaik wird die Änderung nur für den "MP-Live-View" benötigt, da gemx da das Bild im Grafikspeicher verkleinert, was nen ordentlichen Performance-Boost gibt.
    ... das wäre der Punkt, wo ich dann spiegeln würde (also vermutlich sogar noch mit Hilfe von DX-Mitteln, damit es flott bleibt. Theoretisch müste man das mit dem kleinskalieren sogar verknüpfen können).


    zu (A): in den Atmowin Sourcen ist ein Sample Com-CLient drin. Ich hab den mir nie angesehen, aber langt der nicht?
    Nein. Leider nicht. Das hatte ich mir bereits angeschaut. Das Coding an sich finde ich auch völlig ok. Allerdings will ich nicht wieder mit C++ arbeiten - und die Zusammenarbeit mit der (alten) COM-Schnittstelle und C# ist immer so eine Sache.
    Wenn ich also mit C++ agieren möchte, bräuchte ich keine Hilfe. Bei C# bekomme ich den Kram allerdings nicht richtig eingebunden, damit ich das kompiliert bekomme.

    Danke! Das schaue ich mir mal an.


    VG,
    Heimkinofan.
     

    gemx

    Retired Team Member
  • Premium Supporter
  • October 31, 2006
    1,972
    539
    Home Country
    Germany Germany
    Die Quellen liegen ganz normal in dem MP-Tools SVN Repository.

    https://mp-plugins.svn.sourceforge.net/svnroot/mp-plugins/trunk/plugins/Atmolight

    Die COM-Anbindung unter C# ist eigentlich super einfach - Dank Visual Studio.

    Man fügt einfach eine Referenz zu dem Projekt hinzu, wählt den Karteireiter "COM..." und dort den "Atmowin..." Eintrag und schon generiert VST automatisch eine entsprechende Interop dll, die man dann ganz einfach benutzen kann.

    Das wirkliche spannende zum Initialisieren befindet sich in der Methode "ConnectToAtmoWin"
    Code:
        private bool ConnectToAtmoWinA()
        {
          try
          {
            atmoCtrl = (IAtmoRemoteControl2)Marshal.GetActiveObject("AtmoRemoteControl.1");
          }
          catch (Exception ex)
          {
            Log.Error("atmolight: exception= {0}",ex.Message);
            atmoCtrl = null;
            return false;
          }
          ComEffectMode oldEffect;
          atmoCtrl.setEffect(ComEffectMode.cemLivePicture, out oldEffect);
          atmoLiveViewCtrl = (IAtmoLiveViewControl)Marshal.GetActiveObject("AtmoRemoteControl.1");
          atmoLiveViewCtrl.setLiveViewSource(ComLiveViewSource.lvsExternal);
          atmoCtrl.getLiveViewRes(out captureWidth, out captureHeight);
          DisableLEDs();
          Log.Info("atmolight: successfully connected to AtmoWinA.exe :)");
          Log.Info("atmolight: live view capture resolution is {0}x{1}. Screenshot will be resized to this dimensions.", captureWidth, captureHeight);
    
          return true;
        }

    Wichtig ist, das Atmowin gestartet sein muss, sonst funktioniert es nicht.

    Der Patch wird es leider nie in des SVN von MP schaffen, da dieser direkt jeden Frame abgreift, bevor er gerendert wird.
    Die Zeit, die ein Plugin allerdings in diesem Callback verbringt, muss extrem kurz sein, sonst kommt es zu tearing, ruckeln usw.

    Das Team wollte sich hier einfach nicht noch eine Baustelle diesbezüglich aufmachen.

    Auch das Plugin kann minimale Verzögerungen verursachen.
    Allerdings mache ich es so, dass ich die Texture noch im GPU Speicher mittels der GPU runterskaliere auf die Größe, die von Atmowin ausgewertet wird.
    Würde man jedesmal das ganze Bild in voller Auflösung aus dem GPU Speicher holen und dann bearbeiten würde es bei HD ziemlich sicher zu sichtbaren Rucklern kommen.
     

    Heimkinofan

    Portal Member
    March 2, 2008
    14
    0
    Home Country
    Germany Germany
    AW: [Neues Plugin] Atmolight plugin

    Hi gemx,

    vielen Dank für die Info. Das mit Visual Studio werde ich nachher mal angehen. Eigentlich nutze ich das schon, hatte das das letzte Mal trotzdem nicht hinbekommen... jetzt habe ich neuen Mut gefasst. ;)

    Bzgl. dem Runterskalieren: Was spricht denn dagegen, dabei auch eine Spigelung durchzuführen? Dann wären die Kanäle oben/unten wenigstens nicht mehr vertauscht. Oder wäre das wiederum zu performance-lastig? Ich hätte vermutet nicht.

    Vielen Dank auf alle Fälle und noch ein schönes Restwochenende!
    HeimKinoFan.

    Man fügt einfach eine Referenz zu dem Projekt hinzu, wählt den Karteireiter "COM..." und dort den "Atmowin..." Eintrag und schon generiert VST automatisch eine entsprechende Interop dll, die man dann ganz einfach benutzen kann.

    So, leider komme ich nachwievor nicht weiter. AtmoWin ist gestartet. Visual Studio auch.
    Unter "Verweis hinzufügen"->"COM" wird jedoch nichts a'la "Atmo..." gelistet.

    Wieso erscheint der Eintrag bei mir nicht? Muss ich AtmoWin irgendwie noch anders installieren/registrieren/...?!

    Vielen Dank schon mal!!! Und viele Grüße,
    Heimkinofan.

    ...geschafft. Die Lösung:

    AtmoWin musste ich nur "als Administrator ausführen". Anschließend erscheint es auch in Visual Studio unter "Verweis hinzufügen"->"Referenzen" und kann hinzugefügt werden.

    Viele Grüße,
    Heimkinofan.
     

    harle

    Portal Member
    October 22, 2010
    12
    0
    Hallo,

    wie kann ich Atmolight in MP auch während der Visualisierung von Musik aktivieren (Filme und Serien laufen problemlos)?


    Viele Grüße
     

    harle

    Portal Member
    October 22, 2010
    12
    0
    Hi Mac,

    was mache ich falsch? In den Einstellungen sehe ich nur "Pfad zur AtmoWinA" und "Aktion bei MP schließen".



    Viele Grüße
     

    Users who are viewing this thread

    Top Bottom