Well an update on my own post in case anyone's interested -- got it to
work by running a While loop and starting the clip over if it reached
the duration threshold for the video. First, set the Slide or
MovieDisplay object duration to 0, with the video setting StopAfter
set to "No" and EndMovieAction set to "none". Also make sure the
slide's setting for "ClearAfter" is set to "No". Then put the
following InLine after the Slide or MovieDisplay object, substituting
the relevant names:
Dim Vid1 As SlideMovie 'or as MovieDisplay object, as the case may be
Set Vid1 = CSlideMovie(yourSlide.States("Default").Objects("Movie"))
'instead of "yourSlide" put in your slide's name, or if it's a
moviedisplay object named "MovieObject", just do "Set Vid1 =
MovieObject"
Dim lngVideoOnsetTime As Long
lngVideoOnsetTime = Clock.Read
Do While... 'set the condition for the loop to end here
If Clock.Read > lngVideoOnsetTime + [insert video duration here in
msec] Then
Vid1.Load
Vid1.Play
lngVideoOnsetTime = Clock.Read
End If
[insert other relevant loop code here]
Loop
Vid1.Stop
Set Vid1 = Nothing
You'll need to know your video's duration. If it's a variable duration
depending on the trial, then you can add an attribute to the list
called "VideoDuration", and then replace the part in brackets above
about duration with CLng(c.GetAttrib("VideoDuration")).
Hope that helps -- if anyone knows how to loop a video in an easier
way, please post. Or if you know how to automatically read in the
video's duration so having a manually specified attribute
"VideoDuration" is not needed.
Alon