ClicFlic Logo

ClicFlic Logo
ClicFlic

Saturday, September 14, 2013

Preloading Enhancements

We have enhanced the preloading capabilities of ClicFlic and provided authors more control over how and when media assets are preloaded. There are now several choices for preloading images, swf files, audio files, and video files for both clips and interactions.

Preloading now works in both Flash and HTML5 implementations. However, many mobile browsers and devices allow for only limited preloading of audios and videos.

Option A - Preload Clip

A clip can be designated to perform an IMO-wide preload in the Clip -> Advanced Settings.  When this clip loads the IMO will attempt to preload media for all clips and interactions. You can:
  • Indicate whether all images only, images and audio, or images, audio, and video files will be preloaded.  
  • Indicate that only designated clips and interactions should be preloaded, or all clips and interactions in the entire IMO. Clips and interactions are 'designated' for preload in their advanced settings.
  • Indicate that clip auto-forward settings be delayed until after all either all items have completed pre-loading, or a configurable maximum time has elapsed (whichever happens first).
  • Update the value of a state variable with the number of number of items remaining to complete preloading. You can then display this in an interaction attached to the preload clip to show the user the progress of preloading as the number counts down to zero. 
  • Set the maximum wait time for preloading, after which the clip will autoforward if set to do so.
You can make several other settings in Clip-Advanced, such as the maximum number of items to preload, to give you control how the IMO behaves for this type of preloading.

Option B - Preload the next clip while the previous clip is playing.

For applications that are very sequential in nature, each clip can designate one other clip to be preloaded while that clip is playing. This is useful in eliminating any delay time in starting the next clip. The clip to be preloaded can be designated in the Clip -> Advanced Settings.

Option C - Preload the next clip when a specific interaction is presented.

Like option B, except an interaction can designate a clip to be preloaded when the interaction is presented. This can be used at the end of a clip, when an interaction appears, to preload the next clip while the user is reviewing the content of the interaction.

Option D - Globally preload designated clip and interaction images only at load time

A global preload occurs when the IMO initially loads before the first clip is presented.  If there is a preload clip defined (that is, a clip set per Option A above), there is no global preloading.  When the IMO initially loads, it will look for all clips and interactions that have been designated for preloading and conduct the preload. Only images are preloaded during a global preload. Video and audio files are not preloaded.
 

About Preloading

Where possible, preloading is conducted by downloading 100% of the media resource into the IMO and then using that resource directly for presentation when the resource is needed.  For certain implementations, however, this is not always possible for audio and video resources.

Flash - will download 100% of all resources.

HTML5 - Desktop (non-mobile)
    - All browsers except IE9 will download 100% of all resources. IE 10 and above does this.
    - IE9 will use the 'preload' function on the video or audio HTML tag, which usually preloads only enough of an audio or video to play it through without stopping.

HTML5 - (Mobile) Many (but not all) mobile browsers allow you to download all resources, but very few allow the downloaded resource to be used directly for playback. This means the browser will use it's own cache for playback, but browsers use different caching techniques and processes on different mobile devices.

         
 Example

I will create an IMO that performs preloading (Option A) and place a link to it here shortly. 







No comments:

Post a Comment