Seite 1 von 2

Problem mit PlayMovie() im Fullscreen

Verfasst: 12.09.2009 15:21
von jojo1541
Wie oben erwähnt kann ich keine Videos im Fullscreen abspielen.
Suchen ging schlecht, da die Sufu noch nicht funktioniert.

Code: Alles auswählen

InitMovie()
InitSprite()

LoadMovie(0,"new2.AVI")

;OpenWindow(0,0,0,1440,900,"test",#PB_Window_BorderLess)
OpenScreen(1280,1024,32,"test")

sid = ScreenID()
;sid = WindowID(0)

PlayMovie(0,sid)
ResizeMovie(0,0,0,1280,720)

Repeat

 ;WindowEvent()
 Delay(10)

Until GetAsyncKeyState_(#VK_ESCAPE)
nehmt mal irgendein video, im Fenster kann ich das Video wunderbar abspielen, aber sobald ich im Fullscreen bin, sehe ich nichts.(auch schon mit Flipbuffers() und Clearscreen(0) probiert.)

Ich schätze mal, ich hab mal wieder irgendwas nicht beachtet, oder vergessen. Da ich aber anscheinend selbst zu dumm bin /:-> , es zu finden, frage ich hier mal an.

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 12.09.2009 19:22
von Sven
Zumindest sollte in die Schleife ein Delay(10), damit sich das Programm in der Schleife nicht totrennt.

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 12.09.2009 23:42
von jojo1541
würde ich sofort machen, wenns damit gehen würde.
Aber damit du zufrieden bist, pack ichs mal mit rein.

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 13.09.2009 01:16
von Sven
Sorry, tut auch bei mir nicht. Was spricht gegen einen WindowedScreen?

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 13.09.2009 01:29
von jojo1541
Das es ein Bildschirmschoner werden soll.(ist nur ein zusammengeschustertes Beispiel)

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 13.09.2009 02:02
von Sven
Dann kannst Du auch ein Window rahmenlos öffnen und darauf einen WindowedScreen aufmachen. Hat den Vorteil, dass Du die Bildschirmauflösung nicht änderst, was manchmal unschöne Effekte verursacht.

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 13.09.2009 02:39
von jojo1541
ja ne, aber für nen windowed screen bräuchte ich mal wieder die ScreenID(), die ja offensichtlich nicht funktioniert.

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 13.09.2009 02:59
von TomS
jojo1541 hat geschrieben:ja ne, aber für nen windowed screen bräuchte ich mal wieder die ScreenID(), die ja offensichtlich nicht funktioniert.
Hast du's schonmal mit RenderMovieFrame() versucht?

Code: Alles auswählen

InitMovie()
InitSprite()

LoadMovie(0,"c:\windows\clock.avi")
OpenScreen(1280,1024,32,"test")

sid = ScreenID()
SpriteID=CreateSprite(0,MovieWidth(0),MovieHeight(0))

PlayMovie(0,#PB_Movie_Rendered )

Repeat
	FlipBuffers()
	ClearScreen(0)
	RenderMovieFrame(0, SpriteID(0))
	DisplaySprite(0,40,100)
	Delay(10)
Until GetAsyncKeyState_(#VK_ESCAPE)

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 13.09.2009 03:27
von Sven
Vergiss RenderMovieFrame ganz schnell wieder. Das ist Glücksache, mit welchen Videos und Codecs das funktioniert. Und meistens funktioniert es nicht, sobald das Video bißchen mehr als mpeg1 oder 2 ist.

Wenn Du für einen Bildschirmschoner schon Videos brauchst, schau Dir mal die DShowMedia von inc an: http://www.purebasic.fr/english/viewtop ... bc71dcdf7d

Re: Problem mit PlayMovie() im Fullscreen

Verfasst: 13.09.2009 04:07
von jojo1541
Ok, danke Sven, sehe ich mir morgen mal an.