Forum Discussion
Storyline Video Custom Controls Not Working
Hi, I’m looking for help with a video interaction in Storyline. Either I’m missing something, or Storyline’s behavior has changed.
I have a video on a slide that users must watch for compliance reasons. To prevent skipping, I’ve disabled the built-in video controls and instead created custom Play, Pause, and Rewind buttons. This approach has worked well in the past.
Each button has triggers:
- Play: plays the video, hides the Play button, and shows the Pause button.
- Pause: pauses the video, hides the Pause button, and shows the Play button.
- Rewind: rewinds the video by 5 seconds.
The issue is with the Rewind button. When clicked, it unexpectedly resets the Play button to its Normal (visible) state, even though it should remain hidden if the video is playing. I’ve tried:
- Changing the slide’s revisit behavior (Automatic, Resume Saved State, Reset to Initial State).
- Adjusting media playback settings (Triggered, When Clicked, Automatically).
- Controlling both the media and the timeline (since rewinding the media directly didn’t work).
- Reordering triggers and using variables to manage button states.
Despite all this, the Play button keeps reappearing when Rewind is clicked, which breaks the intended user experience. I know I could leave all buttons visible, but that doesn’t suit the design, and again — this setup has worked before.
Any insights or suggestions would be greatly appreciated!
Try using a single Play/Pause button that toggles between two states, rather than separate buttons. You can use the built-in "Selected" state to handle this:
- The Normal state should show the Pause icon
- The Selected state should show the Play icon
Since "Selected" is a built-in state, Storyline will automatically toggle between these two states when the button is clicked.
You can then use triggers to pause or resume the timeline based on the button's current state. For example:
- When the button is clicked,
→ If state = Selected → Pause timeline
→ If state = Normal → Resume timeline
This keeps the interaction simple and clean with only one toggle button controlling both actions. Example trigger below:
I've also attached my version of the setup for you to review.
9 Replies
- JessDavis1Community Member
Good morning!
Are you able to attach the file?
I'm wondering if creating a T/F variable that tracks whether the video is actively playing might help control the state of the play button? Just a thought!
- DanielJackso042Community Member
Added a version below Jess if you want a crack at helping me fix my mistakes/issues.
- DanielJackso042Community Member
Thanks Jess, unfortunately I can't attach a version due to our info sec policy.
I did try a variable...one on the media and when that didn't work i did one for the actual play button, but it didn't work.
I'm stumpted because I have done this in the past and it worked like a charm. Thanks for your advice though, its appreciated.
Hi, DanielJackso042!
I understand you can't upload the file due to security purposes. I wanted to point out that you're welcome to share it privately with our team, and we're happy to sign an NDA upon request. We delete the files once troubleshooting is complete.
- DanielJackso042Community Member
I've added a test version below under Nedim's comment...feel free to take a look and point out any glaringly obvious mistakes I must be making.
- NedimCommunity Member
It would be helpful if you could attach a simple, non-confidential slide with your video and triggers so others can take a closer look and help troubleshoot.
Also, what exactly is your Rewind button doing? Is it jumping to cue points? Syncing video and timeline after manual video control can be tricky and often leads to unexpected behavior.
That said, I already responded to your other post about rewinding media using built-in controls. Additionally, there’s a way to prevent users from seeking forward, like the functionality you see in Rise (JavaScript solution).
- DanielJackso042Community Member
Open to feedback—please feel free to tear this apart!
What I expected (and what has worked in previous builds) is that when you click rewind, the button states remain unchanged: play stays hidden and pause stays visible—unless you’ve paused first, in which case play becomes visible and pause hides.
What’s happening now is that play becomes visible immediately after clicking rewind, and I can’t figure out why. I’ve implemented this before without issues, so I’m genuinely confused.
If I’m missing something obvious, please point it out!
- NedimCommunity Member
Try using a single Play/Pause button that toggles between two states, rather than separate buttons. You can use the built-in "Selected" state to handle this:
- The Normal state should show the Pause icon
- The Selected state should show the Play icon
Since "Selected" is a built-in state, Storyline will automatically toggle between these two states when the button is clicked.
You can then use triggers to pause or resume the timeline based on the button's current state. For example:
- When the button is clicked,
→ If state = Selected → Pause timeline
→ If state = Normal → Resume timeline
This keeps the interaction simple and clean with only one toggle button controlling both actions. Example trigger below:
I've also attached my version of the setup for you to review.
Related Content
- 7 months ago
- 7 months ago
- 9 months ago
- 10 years ago