Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Captivate 8: Prevent going to next slide until video plays

Explorer ,
Apr 28, 2016 Apr 28, 2016

Using Captivate 8 on Windows 7 64-bit

I have a few slides with videos inserted as Event videos. I have a client who does not want the learner to be able to advance to the next slide by clicking NEXT until the video is done playing. I have experimented with variables, actions, and changing properties but am not sure if this is possible and if it is, what is the best practice?

I'm also wondering if something can be set up so that if the learner has watched the video and advanced and then comes back, they won't be required to watch the entire video again before advancing.

Any help would be appreciated.

Thanks!

TOPICS
Editing , Getting started
4.8K
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 28, 2016 Apr 28, 2016

Hi Ed,

You can turn off navigation per slide at properties:

On enter: Assign / Assign: cpCmndShowPlaybar / with: 0 (off) or 1 (on).

Next you can add a button or clickbox and add jump to slide or next slide to it (don't forget to uncheck continue project)

You want this button to appear at the end of the video so time it to appear after x seconds (x is videolength).

Hope its helpfull, cheers

Peter

Comment: will not be functional for event video, see another answer in this thread

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 28, 2016 Apr 28, 2016

Peter - thanks you for your reply....I realize I left out some important information in my original post...

For navigation, I have a NEXT button and a PREV button on the screen. I do have the Playbar up but the only things visible there for navigation are the Play button and the progress bar.

I think what your suggesting it to match the timeline of the slide to the duration of the video, and then I can put the NEXT button near the end of the timeline.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
People's Champ ,
Apr 28, 2016 Apr 28, 2016

I put my videos in html and insert as html5 animations.

When the video has ended I send a command to show the next button.

window.parent.cp.show("next_btn");

I always have a progress array going also so when you revisit a slide the next button is shown from the beginning.

This is all very easy to set up with a slide enter listener.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 28, 2016 Apr 28, 2016

TLCMediaDesign,

Thanks...solution sounds simple but is much more advanced than what I'm accustomed to. If I have an mp4, I don't know how to put it in HTML and then insert as an HTML5 animation. You mean just a basic HTML file with a line that calls the video?

How is the command sent? Is it Captivate functionality? How would I set up a progress array and a slide enter listener?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
People's Champ ,
Apr 29, 2016 Apr 29, 2016

Here is an example I posted in another thread:

Re: End of video

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 28, 2016 Apr 28, 2016

@Peter Sorry, that will not work for video that is inserted as event video, because that type of video will play totally independent from the slide timeline. There is no way to have a 'Next' button after the end of the video in that case. You can insert an event video with a duration of 3 minutes on a slide with a duration of 1 sec.

It is true that you shouldn't use a playbar, but need custom navigation buttons.

You will need to switch to multislide video (which can be inserted on one slide as well), where the video is controlled by Captivate, slide duration will be the same as the video. In that case you can increase the slide duration beyond the end of the video and insert a Next button with a timeline starting at the end of the video.

SlideVideo.png

This would also allow to realize your second goal, but that will be more tricky. You'll have to use micro navigation, and a conditional advanced action that is triggered by the On Enter event of the slide. Are you familiar with advanced actions?

Micro navigation is explained in this article: Micro-Navigation in Adobe Captivate - Captivate blog

The idea is that you use at least one user variable v_back, which will store the frame number when the Next button is clicked. That Next button will do both the assignment of that variable with the current frame number (stored in the system variable cpInfoCurrentFrameNumber) and go to the next slide. The On Enter event of this slide with video will check the value of that variable v_back: if it is bigger than the default value (on definition: can be 0 or 1), it means that the slide has been visited already, and you navigate then immediately to the frame number stored in v_back. That will be near the pausing point of the Next button, after the video.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 28, 2016 Apr 28, 2016

Lilybri - thank you.

I was thinking I could use the event video and uncheck "pause the slide until end of the video" and have the slide duration be basically the same duration as the video. The only potential trouble I could see there is if the learner pauses the video; then, the slide will continue to "run" and the NEXT button will show up before the video ends. So I think the multi-slide sounds good. However, the video seems to be dictating when the slide ends. I cannot separate it as you have it in your screen shot. My looks like this:

If I understand your solution correctly, then any time the learner heads back to this slide, the video will automatically skip to a particular frame in the video, where the NEXT button was clicked the first time around. But, the learner may be coming back to the slide to see the video again. Or maybe just coming back to watch the beginning of the video, and then want to click NEXT before video is played until the end.

I was playing around with slide properties so that the On Enter action hides the NEXT button. I was then looking for a way to show the NEXT button when the video ended, or when the slide ended.

Maybe there's a way to use some kind of Quiz property i.e. "You must answer this question to move on" translates to "you must watch this movie to move on." Then, once the "question" is "answered", they can navigate through the slide without having to "answer" again.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 28, 2016 Apr 28, 2016

I think I have an idea of how to use micronavigation....

There will be a NEXT button (N1) set up near the end of the timeline as described. Using the micronavigation, the variable v_back will increment as you described when N1 is clicked.

There will be duplicate NEXT (N2) button overlaying N1 button. Upon entering the slide, N2 will be hidden via an advanced action that says "hide N2 if v_back is 0." However, if V2 is not 0, i.e. the video has been watched, N2 will be shown immediately at the beginning of the slide....?

I will try this out.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 28, 2016 Apr 28, 2016

Alternative is to have two Next buttons, will label them Bt_NextFirst and Bt_NextSecond. The first one will appear as I showed in the previous screenshot of the timeline. The second button starts at the beginning of the timeline, but is initially hidden in Output (eye icon on the Properties panel). You configure the first button to trigger an advanced action with three commands:

  1. Hide Bt_NextFirst
  2. Show Bt_NextSecond
  3. Go to Next slide

With that work flow, when the user comes back the slide will start from the beginning, but user has the Next button immediately available.

It is a bit like you described, but maybe easier. You don't have to use the On Enter event in that case.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 28, 2016 Apr 28, 2016

ah, yes....and then no need to have a variable.

I will try this! Thanks!

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 29, 2016 Apr 29, 2016

Thanks - I'm experimenting on implementing this but am not sure it will fit exactly....if I have multiple slides where I want this to occur, it looks like I have to create a Bt_NextFirst and Bt_NextSecond button for each slide and give them distinct names i.e. Bt_NextFirst_slide1, etc. Is that correct?

A suggestion I originally had from the stakeholder was to have this functionality work on ALL slides, not just slides with movies i.e. the stakeholder wanted to make sure the learner viewed all the content on a slide before being able to click NEXT. I think this is a bit too restrictive, especially if the learner want to go through the material again.

If I need to do this extra button creation I may see if I can incorporate a variable.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 29, 2016 Apr 29, 2016

All depends on the number of slides indeed. For the button that is at the start of the slide, you could use a shape button that is timed for the rest of the project, thus having a button with a unique ID, makes it a bit easier. So would the use of a shared action instead of an advanced action, and a very strict labeling system for the button that is inserted at the end of the slide.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 29, 2016 Apr 29, 2016

So I have as you suggested a shape button, NEXT_2, that starts at the beginning of the slide but is hidden. It is timed for the rest of the project. I have another button, NEXT_1, that appears near the end of the timeline. I created a shared action to unhide NEXT_2 when you click NEXT_1 and also continue to the next slide. But it seems that when it NEXT_2 is unhidden based on the click, it unhides through the rest of the project.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Apr 29, 2016 Apr 29, 2016

Lilybiri wrote:

Alternative is to have two Next buttons, will label them Bt_NextFirst and Bt_NextSecond. The first one will appear as I showed in the previous screenshot of the timeline. The second button starts at the beginning of the timeline, but is initially hidden in Output (eye icon on the Properties panel). You configure the first button to trigger an advanced action with three commands:

  1. Hide Bt_NextFirst
  2. Show Bt_NextSecond
  3. Go to Next slide

With that work flow, when the user comes back the slide will start from the beginning, but user has the Next button immediately available.

It is a bit like you described, but maybe easier. You don't have to use the On Enter event in that case.

Hmmm...this is not working. When I click Bt_NextFirst, it shows Bt_NextSecond and hides Bt_NextFirst but it does not go to the next slide. I tried messing with the order of commands too but that did not seem to help. I debugged this...it turns out that on the Bt_NextSecond button, I had checked the Include in Quiz check box in the Reporting section of Properties, so both Next buttons had it checked and it was causing the slide to not advance.

If you are using the Progress Bar, it will nullify this whole thing, as the learner can just scrub to the next slide(s). That Progress Bar is getting to be a real pain in the neck.

If the Progress Bar were present, I would some additional configuration. One is that in the On Enter list for the slide properties, hide the playbar. Then, of course, you can't pause the slide/video, so you would need to add a pause button and a play button.

I thought about to your list of commands for Bt_NextFirst, I would increment cpCmndShowPlaybar by 1 so that the playbar would be visible later, but the On Enter would negate that. Then my head exploded, probably partially due to the fact that it's Friday.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Apr 30, 2016 Apr 30, 2016
LATEST

cpCmndShowPlaybar is not a numeric variable, it is a Boolean variable. That means that it can have only two values: true/false (or 1/0). Its default value =1, which means that the Playbar is visible. It has no sense to use increment. You can use 'Toggle' command to switch between 0 and 1, false and true.

System variables in Captivate 8/9 - Captivate blog

When a button is disabled and hidden, it will not pause the slide.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
Help resources