Page 1 sur 1

Pb avec la fonction PlayMovie

Publié : mer. 06/oct./2004 23:43
par nico
Si on relance une séquence de lecture vidéo à partir d'un thread, on retrouve un ancien bug, c'est à dire qu'il n'y a plus d'affichage vidéo.

L'affichage video revient si on déplace la fenêtre comme avec l'ancien bug!

:roll:

Publié : jeu. 07/oct./2004 0:21
par nico
Le prog de test:

Code : Tout sélectionner

Procedure Repeter(NomFichier2$)
  Repeat
    Debug MovieStatus()
    If MovieStatus()=0
      PlayMovie(1, WindowID())
    EndIf
    Delay(500)
  Until GetGadgetState(1) = 0
EndProcedure 

If OpenWindow(0, 0, 0, 600, 400 , #PB_Window_SystemMenu | #PB_Window_ScreenCentered , "Test Bug") 
  If CreateGadgetList(WindowID()) 
    ButtonGadget(1, 0, 0, 140, 30, "Répéter en boucle", #PB_Button_Toggle)        
  EndIf
  
  If InitMovie() <> 0 
    NomFichier$ = "c:\mon fichier video"
    LoadMovie(1, NomFichier$)
    PlayMovie(1, WindowID()) 
    ResizeMovie(0, 50, MovieWidth(), MovieHeight())
  EndIf 

  Repeat 
    event = WaitWindowEvent() 
    Select event
      Case #PB_EventGadget          
        Select EventGadgetID()  
          Case 1
            If GetGadgetState(1) = 1
              ThreadID = CreateThread(@Repeter(), NomFichier$) 
            EndIf 
          
        EndSelect
    EndSelect 
  Until event = #PB_EventCloseWindow 
EndIf 
Ce qui est surprenant, c'est que si je déplace la création du thread avant la fonction repeat; ça marche si et seulement si je passe en paramètre le nom du fichier bien que dans la procédure, je ne m'en serve pas. 8O

Publié : jeu. 07/oct./2004 0:24
par nico
J'allais oublié, mon système d'exploitation est Window XP SP1.

:)

Publié : lun. 11/oct./2004 11:52
par nico
Je vois que la 3.92 ne résoud pas le problème, est ce que c'est parce que c'est mon code qui pose problème!

:roll: