How do I make a sound for a button execute before the next slide appears.

Feb 02, 2016

I've actually asked this question before. What I want is to press a button and have it make a sound, like a click, and then for it to trigger the next slide. I have been told many times that by ordering the sound trigger before the switch trigger, this problem would be taken care of. This, however, does not work despite the fact that being able to do things like this is more or less the point of having trigger orders.

I have attached a sample of two slides below. Despite the order of the triggers, the sound does not fire before the slide switches.

Eventually I solved this problem by having the button trigger the media *click sound) and then having the completion of the media trigger the slide switch. For reasons that are too complicated to get into, this is no longer a great option. And besides, I am noticing lots of problems with trigger order more generally so i'd like to solve this simple problem. Once I solve it, it might help with bigger issues that I am having.

 

28 Replies
Fraser Hawkins

Thanks for the suggestion Seth, but this effect isn't at all what I'm looking for! Also, this function of Storyline is supposed to work properly, so if it doesn't, I'd like to hear from the people at Storyline why it doesn't. I am currently on my 30 day trial and I'd like the software to do what it is supposed to.

I didn't know you could add sounds to states though, so that's interesting. 

Fraser Hawkins

Hi Leslie, thank you for your response. Yes, on the file you made the trigger sequence seems to work fine. However, I just made another test example, this time using a louder, clearer sound, and the trigger sequence still completely fails to execute properly. Please find the file attached for my example.

Walt Hamilton
Frasier Harpkins

Thanks for your response James, but as I mentioned in the OP, this is not the solution I am looking for. I need to the triggers to fire properly in a situation more complicated than the one I am using as an example here so I want it to work properly without me "gaming" the system.

 

What you describe works for people: If I am executing your triggers, I play the audio, then I go on to advance the slide. In the case of the computer, the "brain" sends one of its "gofers" to play the sound, then turns its attention to the next trigger, and advances the slide. The gofer takes a non-zero amount of time to find and play the audio, which is magnitudes of time longer than it takes the brain to turn its attention to advancing the slide, and actually advance it.

In truth, the only way you will hear the sound is to create some sort of a pause between beginning the sound and beginning the slide advance. This is a race the advance will always win, so it isn't exactly "gaming" the system. Think of it as choosing the timing you want.

Fraser Hawkins

If this is the case, and you can't keep the slide from transitioning until after a trigger has completed, then this creates enormous problems for more complex projects. When I ask this question, however, it seems that people think what I am asking for is attainable and normal. Is this not the case, and if not, why are so many people that work for Articulate Storyline confused on this subject? That seems very strange to me...

Steve Flowers

Yes. Triggers execute in order very quickly. When the trigger to go to the next slide is reached, the transition will happen immediately. The machine does as you ask;)

When I've needed to do this, I have worked it a couple of ways. The way that works best for me is to use a layer to work the transition.

  • Click button - > Show layer
  • Layer - > Plays audio on the timeline
  • Trigger - > When timeline ends, jump to next slide

This essentially bundles all of your transition stuff into the layer. Your layer is like a function that's called. A state can also behave like a function but you're stuck with the original problem of everything happening at once.

 

Walt Hamilton

Only the people labeled as "Staff" work at Articulate; the rest of us are just users trying to help out a fellow user.

I put videos on my slides. I don't expect a user to click one button to start a 10 minute video and also advance the slide. If they do, I expect them to miss all or part of the video. You have the same situation. It may be harder to recognize because your sound is shorter, but it is the same situation. Your users can advance immediately and not hear all the sound, or you can delay the advance until the sound ends.

Yes, I agree. Most of the posters seem to think that what you want is normal and can be attained. Their responses seem pretty clear regarding how this can be done.

Fraser Hawkins

Hello Leslie,

Yes, it helps, although in my OP I mention that "Eventually I solved this problem by having the button trigger the media *click sound) and then having the completion of the media trigger the slide switch."

Essentially I knew the solution but was hoping there was an alternative and it appears that there isn't. As Walt has pointed out, if what I wanted to happen was implemented this would cause a number of other problems for people. Thank you for your time!

 

Fraser Hawkins

Thanks for the response Walt. When I refer to Articulate people I do mean staff. I've asked this question before, under a different account (at another job) and was told by Articulate staff to order my triggers properly. When this didn't work, I figured out the media completion solution, which I mention in the OP. Recently, when this made things difficult (in a project where I want a group of buttons in the state of "visited" to trigger the appearance of another button before a layer change) I was hoping to resolve the trigger issue by order as opposed to the addition of media to lengthen the time before the layer change. I made this thread to see if the original solution that was suggested to me by staff was workable. Apparently it isn't and, as you pointed out in your movie example, for good reason. Thanks for your time.

Steve Flowers

Probably easy to see from the previous description. Here's a quick example of "on slide" transition after audio. One way of many to pull this off.

Another, if you want to use the same audio for multiple slides, could setup the audio on the master slide. 

  • Audio in layer on master slide. Trigger when timeline ends to add 1 to a variable goNext.
  • Trigger on base of master slide to show audio layer when variable playAudio1 changes.
  • On the base slide on your button, two triggers:
    • Jump to slide next slide when variable goNext changes
    • Adjust variable playAudio1 to add 1 when the user clicks the button

This will setup a listener on the slide that'll sit and listen for the goNext variable change. The playAudio1 variable change will "remote control" the listener on the master slide. When the master slide "hears" that variable change, it'll open a layer to play that audio. At the end, it remote controls your button listener trigger. It's a nice round trip all controlled through variables.

*edit... videos are not variables.

Joseph Ferraro

I know this is an older thread, but just wanted to share some perspective on this issue, as I completely empathize with Fraser on how frustrating this is.

The simple fact is that a trigger set to play a sound on down-click doesn't happen, regardless of where you order it.

SL2 is configured to look for the release of the click. This is why you hear the media on clicks that are set to bring up layers/do things other than jump to another slide. Very easy to replicate this behavior yourself if you're curious.

This is probably more of a usability defect than a feature request, but I submitted a suggestion to change this trigger to behave "on click" instead of on "release of click" about a year ago. Nothing has been done, but maybe SL3 will address this. Ideally, you'd want trigger options for both on click and release click.

 

Ashley Terwilliger-Pollard

Thanks Joseph for sharing your experience here and the change in triggers you'd like to see. It's always helpful to have a bit more details about the use case for what you'd like to see so that our team has more information as they look at designing additional features. You can also always share your thoughts in the form of a feature request here. 

This discussion is closed. You can start a new discussion or contact Articulate Support.