Flash Player med høj framerate og VSYNC
Jeg har ikke selv meget forstand på C++, men har dog mange års erfaring med andre programmeringssprog, herunder bl.a. Delphi og VB.Jeg står og skal bruge Flash afspilleren til et informations-display, men har opdaget, at Windows versionen af Flash afspilleren ikke synkroniserer rendering af billederne til skærmens opdaterings-frekvens - dette resulterer i "tearing" og tab af frames, hvilket er meget synligt, da der bl.a. findes en rulletekst på display'et .. det flimrer og hakker, og efter at have talt med Adobe er konklusionen, at sådan er Flash afspilleren desværre bare indrettet.
Jeg har søgt lidt rundt, og har fundet følgende artikel:
http://www.codeguru.com/cpp/com-tech/activex/com/article.php/c12229/
Denne artikel demonstrerer hvordan man kan få Flash afspilleren til at rendere udenfor skærmen. (den del af eksemplet hvor de også får den til at rendere gennemsigtigt på skrivebordet, er ikke interessant)
Derefter fandt jeg flg. artikel:
http://www.codeproject.com/gdi/tearingfreedrawing.asp
Denne demonstrerer at man godt kan lave 100% flydende skærmopdatering under GDI i Windows, ved brug af en højtopløselig timer og VSYNC via DirectX.
Er der nogen der har eftering nok med GDI og OCX til at sige, om det ville være muligt at kombinere disse to eksempler, og dermed implementere en Flash afspiller med ordentlig synkronisering?
Og i så fald, hvorvidt det kan lade sig gøre at styre hvornår Flash afspilleren renderer en frame?
Ud over, at der ikke er nogen form for synkronisering i Flash afspilleren, ser det nemlig ud som om at den bruger almindelig Windows timere, der som bekendt er meget unøjagtige - hvilket resulterer i en praktisk framerate der afviger med +/- 2 frames per sekund ... det er således ikke umiddelbart muligt at ramme 60 frames per sekund, og spørgsmålet om hvorvidt man kan bede Flash afspilleren om at renderer næste frame øjeblikkeligt, er derfor vigtigt...
Tak!