AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Coverflow mit Opengl flackern nach close
Thema durchsuchen
Ansicht
Themen-Optionen

Coverflow mit Opengl flackern nach close

Ein Thema von Cylence · begonnen am 6. Aug 2008 · letzter Beitrag vom 7. Aug 2008
Antwort Antwort
Benutzerbild von Cylence
Cylence

Registriert seit: 2. Sep 2004
Ort: Allgäu
246 Beiträge
 
Delphi 7 Enterprise
 
#1

Coverflow mit Opengl flackern nach close

  Alt 6. Aug 2008, 08:35
Hi,

ich habe einen MediaPlayer, der einige transparente Forms hat, einmal eine mit Transparent Color und einige die Alphablend haben können. Nun hab ich mit Flying Cow ein Coverflow eingebaut in den Player mit dem man schön die Covers durchblättern kann und dann mit enter auswählt was man ansehen/hören möchte.

da hab ich die komponenten her:
http://www.delphipraxis.net/internal...t.php?t=137198

Das klappt auch alles perfekt, nur wenn ich die Form in der das Opengl coverflow drinnen is Close bzw sogar freeandnil dann hab ich danach immer noch ein flackern in den anderen Forms zu sehen... also ich denke das Opengl irgendwie nicht richtig deactiviert wird, bzw nicht entladen wird wenn ich einfach nur close oder Freeandnil mach?
Kann das sein?
OnClose ist auch noch ein Free von den einzelnen komponenten die verwendet werden für das Flying Cow teil, aber das hat nichts geändert.
Also gibt es eine Möglichkeit das hin zu bekommen? Kennt sich da jemand aus?

Gruß

tom
Tom
Just DO it
  Mit Zitat antworten Zitat
Benutzerbild von Cylence
Cylence

Registriert seit: 2. Sep 2004
Ort: Allgäu
246 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Coverflow mit Opengl flackern nach close

  Alt 6. Aug 2008, 13:25
ich habs schon versucht die form mit

freeandnil
.release
.free
.destroy

zu freeen, aber ich habe immer danach noch ein flackern in den anderen forms... gibt es keine andere möglichkeit als das tool als eigene exe zu machen?
Tom
Just DO it
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#3

Re: Coverflow mit Opengl flackern nach close

  Alt 6. Aug 2008, 14:11
Also OpenGL + Windows-Alpha-Blending = nicht so dolle - nur mal so kurz ausgedrückt. Was passiert denn, wenn du das Alpha-Blending der Forms deaktivierst? Flackern die dann immer noch nach dem schließen des Cover-Flows?
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  Mit Zitat antworten Zitat
Benutzerbild von Cylence
Cylence

Registriert seit: 2. Sep 2004
Ort: Allgäu
246 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Coverflow mit Opengl flackern nach close

  Alt 6. Aug 2008, 14:33
da ich bei der einen Form transparent Color auf jeden fall brauche... geht das leider nicht. weil transparentcolor scheinbar auch stört...

Ja Aber das is ja nicht das Problem an sich, während das Opengl aktiv ist schalte ich alphablend ab, daher gibts da keine probleme. aber nachdem das opengl fenster gefreet wurde...flackerts immer noch weiter...obwohl ja theoretisch opengl aus sein sollte zu dem zeitpunkt. Also muss wohl noch ne dll oder sowas aktiv sein obwohl ich freeandnil etc von der form gemacht hab wo das opengl verwendet wird.

also wenn ich jetzt das ding als eigene exe mach, dann würde nachdem ich diese exe mit dem opengl beende... nichts flackern und garnix... aber mir wäre halt lieber das ganze nicht als eigene exe zu machen, also muss ich rausfinden wie ich alles was die form mit opengl so lädt raushaue...sozusagen oder?
Tom
Just DO it
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#5

Re: Coverflow mit Opengl flackern nach close

  Alt 6. Aug 2008, 15:25
Also wenn ich dich bisher richtig verstanden habe, ist es so, dass die Forms alle ganz normal funktionieren. Wenn du dann das OpenGL-Fenster mit der Flying Cow - Komponente startest, funktioniert auch noch alles. Aber sobald du dann das Flying-Cow-Fenster schließt, flackern alle anderen Forms. Anscheindend ist da was mit dem Flying-Cow .

Wie rufst du denn den Zeichenvorgang von der CoverFlow-Komponente auf? Per Timer-Paint oder macht die das automatisch? Ich werd mir mal die Mühe geben und mir die Komponente mal eben runterladen und anschauen, vielleicht fällt mir auf die schnelle was auf.

Edit: Also die Komponente benutzt einen extra Thread zum Rendern. Im destructor wird der Thread aber beendet. Kann es sein, dass du die Komponente nicht freigibst und der Thread somit nicht beendet wird?
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  Mit Zitat antworten Zitat
Benutzerbild von Cylence
Cylence

Registriert seit: 2. Sep 2004
Ort: Allgäu
246 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Coverflow mit Opengl flackern nach close

  Alt 7. Aug 2008, 07:41
Hi,

naja wie gesagt ich hab alles versucht destroy free freeandnil release... da sollte dann doch die form inclusive dem thread zerstört werden oder?
Anhand der cpu last erkenn ich auf jeden fall schonmal das das opengl nicht mehr aktiv ist, nur eben das geflacker in den anderen forms ist noch da leider...
Aber ich werd das nun als eigene exe auslagern, und mittels createprocess und interappreceiver und interappsender (Komponente zur kommunikation zwischen versch progr.) das ganze lösen, damit hab ich das problem weg und eventuelle Fehler im Opengl stören dann auch das restliche Programm nciht, ich denke das ist zwar nicht die einfachste lösung aber ganz gut.
Danke für Deine Hilfe!!!

Gruß

tom

update: so jetzt hab ichs in 20 minuten oder so umgebaut gehabt als eigene exe, und jetzt kein geflacker in meiner hauptapplikation nachdem coverflow wieder beendet wurde, alles perfekt!! *freeeeuuuuu*
Tom
Just DO it
  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 22:14 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