Preloading Large .SWF Files in Articulate Presenter 09

I have an Articulate slide (the third slide in the presentation), with a .SWF file embedded into it that contains a .FLV video file embedded into the .SWF file. I created it this way to have a full slide view in the player. The problem I am having with it is, the slide will load, and it will be blank for around 10 or 20 seconds and for some up to a minute, before the .SWF file loads (along with the video file). I assume this could be related to the file size of the .SWF, the internet connection speed, or possibly both. I am also assuming I may need to preload the .SWF before the slide comes up, but I am not sure if this would be done in Articulate or in the Flash file itself.

If you have any ideas or best practices I would appreciate the help.

Thanks,

Tim   

17 Replies
Jeanette Brooks

Hi Tim,

A lot of Articulate users who use multimedia in their courses have had success with a custom pre-loader. This is a file that you load into the logo panel (it's invisible to the learner) and it allows your movie to preload in advance while learners are viewing the slides that appear before your movie slide. This way, when the learner gets to a slide that contains a video, the video is already loaded, so the learner doesn't experience a delay while waiting for the movie to load. This works best, of course, if your presentation has enough slides before your movie slide that the movie has sufficient time to load while the learner is viewing those other slides. If you're interested in experimenting with a pre-loader, two of the Articulate MVPs have created some solutions and made them available to the community.  They do require some file manipulation, but it's pretty straightforward if you follow their instructions:

Tim Egan

Thanks James and Jeanette for your ideas.

I incorporated the preloader but it still takes around 20-30 seconds to load the slide with the video in it. I even added more slides to the training to give the video time to load but the extra slides and preloader decreased the load time but only from 1minute down to 20-30seconds as expressed earlier. This is not acceptable in my mind but the client is ok with it. There has to be a better workaround/solution for this.

Dave Newgass

Tim Egan said:

Thanks James and Jeanette for your ideas.

I incorporated the preloader but it still takes around 20-30 seconds to load the slide with the video in it.


Hello,

Have you tried the solution that James has recommended...I know it costs but it may be worth it.  I have purchased it and am in the middle of testing it.

Cheers,

Dave

Tim Egan

Hi Dave,

Yes, I incorporated the preloader and added more slides to the training. It helped, but there's still a 20-30second time span before the slide/video loads.

Would it be better to load the video from a saved server location as a Web Object? If so, would the Web Object load the video before the slide is reached?

Dave Newgass

Tim Egan said:

Hi Dave,

Yes, I incorporated the preloader and added more slides to the training. It helped, but there's still a 20-30second time span before the slide/video loads.

Would it be better to load the video from a saved server location as a Web Object? If so, would the Web Object load the video before the slide is reached?


Were you thinking of something like Amazon S3 or the like?

(Brian...what would using MP4 benefit?)

Cheers,

Dave

Tim Egan

@Brian - Thanks for your reply. No I haven't incorporated it as an MP4. Would this help with the upload issue? Also, Because the customer wants a full slide/player window view, it would have to be embedded in the .SWF file. I think this complicates things.

@Dave - Yes, uploading the video to a hosting site like Amazon S3 and then placing a Web Object in the slide of the video instead. I don't think I could incorporate the full slide view this way but I would rather have the video load instantly.

onEnterFrame (James Kingsley)

Are you saying that you embedding a swf which then loads the flv?

If so the preloader will not help.. it preloads the files embedded in the course.. so it would preload your swf but your swf then needs time to load the flv.

Try embedding the flv directly into the course without the swf middleman. 

Tim Egan

@James - Correct. I created the slide in flash, imported the FLV video into it, then published to SWF, and upload the SWF into Presenter through the Flash Movie option to allow for full slide view.

But I'm not not sure how to embed a FLV file into Presenter. I thought it only allowed for SWF files to be loaded? Would I use a web object here instead or?

Tim Egan

I did a little research and I am learning that to use .FLV video in Presenter, you have to use Engage. I do not have that program because most of the trainings I create for clients run in a SAAS application that does not support engage interactions.

Is there any other way to load a large  flv video or other file type video (MP4) into a slide quickly and without a preloader?

Tim Egan

@ James Yes, I figured that out after I posted my last comment. For some reason I was under the assumption that you could only use SWF files.

I had to forgo the full slide view on the slide containing the video. I just loaded the video as a FLV file into the slide only. Not what I wanted but it loaded in like 4 seconds rather than 30seconds.The client is ok with that time span.

I wish Presenter allowed for full slide view without having to use a work around, and also incorporated the video preloader right into the app itself.

Jeff Schlaybach

Hi All,

So I've continued in the last few days to use Web Objects to insert Captivate 6 swf content that has right-mouse click capability.The only way I seem to be able to get this to work without the falsh menu popping up.

 - See this: http://www.articulate.com/support/presenter-09/adding-a-web-object

The issue I've come across now is loading times are much greater with Web Objects as discussed in this thread

So I tried one of the preloader solutions mentioned by Jeannette above from here: http://frameentered.com/content/articulate-preloader-xml

It works great EXCEPT that because the swf it is pre-loading is Captivate 6, it has action script 3 in it. Because of this, Articulate '09 makes a clicking/hissing noise in the background for about 3 seconds. It is much the same thing if you tried to insert the SWF directly into a slide. Articulate places some sort of yellowish captivate image in the slide and clicks/hisses at you - like telling you it can't run the swf.

Is there anyway to turn off this audio during preloading? I'm so close to a solution I can "taste" it!

Thanks for the help in advance

Nelson Diaz

Have you tried inserting a blank SWF on slide 1 of your presentation with some AS3 code to stop the sound of your Captivate 6 file?  I don't know if it will work, but it may be worth the try.  Create a small blank swf in AS3 and use something like:

import flash.media.SoundMixer;

SoundMixer.stopAll();

You can then move the swf outside of the powerpoint slide workspace to hide it. 

Again, this is just a thought, I haven't tested to see if it works.

Jeff Schlaybach

Hi Nelson,

The "noise" during preloading of the Captivate 6 Web Objects is coming from the fact that Articulate '09 only understands AS2. It woudl not do me any good to include AS3 SWF on the firs slide.

Perhaps something like this exists on AS2 - I am not a flash developer so would not know how to go about doing that. I guess also, since the first slide already has audio, you would not want all the sound to stop, just this "warning" noise from Articulate when it encounters the preloading of the AS3 SWF as part of the Web Object. Is it possible to turn off the audio on just the SWF that you are preloading? How would the audio get turned back on when the Web Object plays it?

Nelson Diaz

Hi Jeff,

You're absolutely right.  The AS3 script will not work on Articulate '09. There is a function in AS2 to stop all sounds and also a method to set the volume on a loaded SWF, but unfortunately these will not work with your Captivate 6 SWF.   I don't know if there is a work around this catch-22 problem.  Hopefully someone in the community has encountered this problem and may offer suggestions.