Graphics

 View Only
  • 1.  Custom Pause Durations

    Posted 06-25-2017 03:50
    Is there any way to set a custom pause length (say for 400 frames), via script?

    I'm working on a ticker that needs variable lengths depending on length of text. I know I could make separate scene directors for each situation, but would like to know if there's a more efficient solution.


  • 2.  RE: Custom Pause Durations

    Posted 06-25-2017 16:36
    Yes, are you already familiar with scripting?
    If so, you can use an OnOnline script that would retrieve a value from a text object (that you could publish to the sequencer). That text object could hold a number of frames.
    Then use SceneDirector.GetTrackByName to retrieve the track that holds a pause event. Get the pause event from the track using GetClipByName then you can set the position of the clip using the clips .Position property..

    Something like (not tested, could have typos or mistakes)


    dim textobj as xpTextObject
    dim track as xpSceneDirectorTrack
    dim clip as xpSceneDirectorClip

    if Self.GetObjectByName("PauseLength", textobj) then
    if self.SceneDirector.GetTrackByName("Track2", track) then
    if track.GetClipByName("pause", clip) then
    clip.Position = CInt(textobj.text)
    end if
    end if
    end if

    #XPression


  • 3.  RE: Custom Pause Durations

    Posted 07-07-2017 22:02
    Yes, are you already familiar with scripting?
    If so, you can use an OnOnline script that would retrieve a value from a text object (that you could publish to the sequencer). That text object could hold a number of frames.
    Then use SceneDirector.GetTrackByName to retrieve the track that holds a pause event. Get the pause event from the track using GetClipByName then you can set the position of the clip using the clips .Position property..

    Something like (not tested, could have typos or mistakes)


    dim textobj as xpTextObject
    dim track as xpSceneDirectorTrack
    dim clip as xpSceneDirectorClip

    if Self.GetObjectByName("PauseLength", textobj) then
    if self.SceneDirector.GetTrackByName("Track2", track) then
    if track.GetClipByName("pause", clip) then
    clip.Position = CInt(textobj.text)
    end if
    end if
    end if

    This solves my problem! Thanks.
    #XPression