Packagecom.greensock.loading.data
Classpublic dynamic class MP3LoaderVars
InheritanceMP3LoaderVars Inheritance LoaderItemVars Inheritance LoaderCoreVars

Can be used instead of a generic object to define the vars parameter of an MP3Loader's constructor.

There are 2 primary benefits of using a MP3LoaderVars instance to define your MP3Loader variables:
  1. In most code editors, code hinting will be activated which helps remind you which special properties are available in MP3Loader
  2. It enables strict data typing for improved debugging (ensuring, for example, that you don't define a Boolean value for onComplete where a Function is expected).
USAGE:

Instead of new MP3Loader("audio.mp3", {name:"audio", estimatedBytes:11500, autoPlay:false, onComplete:completeHandler, onProgress:progressHandler}), you could use this utility like:

var vars:MP3LoaderVars = new MP3LoaderVars();
vars.name = "audio";
vars.estimatedBytes = 11500;
vars.autoPlay = false;
vars.onComplete = completeHandler;
vars.onProgress = progressHandler;
var loader:MP3Loader = new MP3Loader("audio.mp3", vars);

Some of the most common properties can be defined directly in the constructor like this:

var loader:MP3Loader = new MP3Loader("audio.mp3", new MP3LoaderVars("audio", 11500, false, completeHandler, progressHandler) );

NOTE: Using MP3LoaderVars is completely optional. If you prefer the shorter synatax with the generic Object, feel free to use it. The purpose of this class is simply to enable code hinting and to allow for strict data typing.

Copyright 2010, GreenSock. All rights reserved. This work is subject to the terms in http://www.greensock.com/terms_of_use.html or for corporate Club GreenSock members, the software agreement that was issued with the corporate membership.



Public Properties
 PropertyDefined by
 InheritedalternateURL : String
If you define an alternateURL, the loader will initially try to load from its original url and if it fails, it will automatically (and permanently) change the loader's url to the alternateURL and try again.
LoaderItemVars
 InheritedautoDispose : Boolean
When autoDispose is true, the loader will be disposed immediately after it completes (it calls the dispose() method internally after dispatching its COMPLETE event).
LoaderCoreVars
  autoPlay : Boolean = true
By default the MP3 will begin playing immediately when enough of the file has buffered, but to prevent it from autoPlaying, set autoPlay to false.
MP3LoaderVars
  context : SoundLoaderContext
To control things like the buffer time and whether or not a policy file is checked, define a SoundLoaderContext object.
MP3LoaderVars
 InheritedestimatedBytes : uint
Initially, the loader's bytesTotal is set to the estimatedBytes value (or LoaderMax.defaultEstimatedBytes if one isn't defined).
LoaderItemVars
  initThreshold : uint = 102400
The minimum number of bytesLoaded to wait for before the LoaderEvent.INIT event is dispatched - the higher the number the more accurate the duration estimate will be when the INIT event is dispatched (the default value is 102400 which is 100k).
MP3LoaderVars
 Inheritedname : String
A name that is used to identify the loader instance.
LoaderCoreVars
 InheritednoCache : Boolean
If true, a "cacheBusterID" parameter will be appended to the url with a random set of numbers to prevent caching (don't worry, this info is ignored when you LoaderMax.getLoader() or LoaderMax.getContent() by url or when you're running locally).
LoaderItemVars
 InheritedonCancel : Function
A handler function for LoaderEvent.CANCEL events which are dispatched when loading is aborted due to either a failure or because another loader was prioritized or cancel() was manually called.
LoaderCoreVars
 InheritedonComplete : Function
A handler function for LoaderEvent.COMPLETE events which are dispatched when the loader has finished loading successfully.
LoaderCoreVars
 InheritedonError : Function
A handler function for LoaderEvent.ERROR events which are dispatched whenever the loader experiences an error (typically an IO_ERROR or SECURITY_ERROR).
LoaderCoreVars
 InheritedonFail : Function
A handler function for LoaderEvent.FAIL events which are dispatched whenever the loader fails and its status changes to LoaderStatus.FAILED.
LoaderCoreVars
 InheritedonHTTPStatus : Function
A handler function for LoaderEvent.HTTP_STATUS events.
LoaderCoreVars
 InheritedonIOError : Function
A handler function for LoaderEvent.IO_ERROR events which will also call the onError handler, so you can use that as more of a catch-all whereas onIOError is specifically for LoaderEvent.IO_ERROR events.
LoaderCoreVars
 InheritedonOpen : Function
A handler function for LoaderEvent.OPEN events which are dispatched when the loader begins loading.
LoaderCoreVars
 InheritedonProgress : Function
A handler function for LoaderEvent.PROGRESS events which are dispatched whenever the bytesLoaded changes.
LoaderCoreVars
  repeat : int = 0
Number of times that the mp3 should repeat.
MP3LoaderVars
 InheritedrequireWithRoot : DisplayObject
LoaderMax supports subloading, where an object can be factored into a parent's loading progress.
LoaderCoreVars
  volume : Number = 1
A value between 0 and 1 indicating the volume at which the sound should play when the MP3Loader's controls are used to play the sound, like playSound() or when autoPlay is true (default volume is 1).
MP3LoaderVars
Public Methods
 MethodDefined by
  
MP3LoaderVars(name:String = "", estimatedBytes:uint = 0, autoPlay:Boolean = true, onComplete:Function = null, onProgress:Function = null, onFail:Function = null, noCache:Boolean = false, alternateURL:String = "", requireWithRoot:DisplayObject = null)
Constructor
MP3LoaderVars
  
Clones the object.
MP3LoaderVars
Property detail
autoPlayproperty
public var autoPlay:Boolean = true

By default the MP3 will begin playing immediately when enough of the file has buffered, but to prevent it from autoPlaying, set autoPlay to false.

contextproperty 
public var context:SoundLoaderContext

To control things like the buffer time and whether or not a policy file is checked, define a SoundLoaderContext object. The default context is null. See Adobe's SoundLoaderContext documentation for details.

initThresholdproperty 
public var initThreshold:uint = 102400

The minimum number of bytesLoaded to wait for before the LoaderEvent.INIT event is dispatched - the higher the number the more accurate the duration estimate will be when the INIT event is dispatched (the default value is 102400 which is 100k). The MP3's duration cannot be determined with 100% accuracy until it has completely loaded, but it is estimated with more and more accuracy as the file loads.

repeatproperty 
public var repeat:int = 0

Number of times that the mp3 should repeat. To repeat indefinitely, use -1. Default is 0.

volumeproperty 
public var volume:Number = 1

A value between 0 and 1 indicating the volume at which the sound should play when the MP3Loader's controls are used to play the sound, like playSound() or when autoPlay is true (default volume is 1).

Constructor detail
MP3LoaderVars()constructor
public function MP3LoaderVars(name:String = "", estimatedBytes:uint = 0, autoPlay:Boolean = true, onComplete:Function = null, onProgress:Function = null, onFail:Function = null, noCache:Boolean = false, alternateURL:String = "", requireWithRoot:DisplayObject = null)

Constructor

Parameters
name:String (default = "") — A name that is used to identify the loader instance. This name can be fed to the LoaderMax.getLoader() or LoaderMax.getContent() methods or traced at any time. Each loader's name should be unique. If you don't define one, a unique name will be created automatically, like "loader21".
 
estimatedBytes:uint (default = 0) — Initially, the loader's bytesTotal is set to the estimatedBytes value (or LoaderMax.defaultEstimatedBytes if one isn't defined). Then, when the loader begins loading and it can accurately determine the bytesTotal, it will do so. Setting estimatedBytes is optional, but the more accurate the value, the more accurate your loaders' overall progress will be initially. If the loader is inserted into a LoaderMax instance (for queue management), its auditSize feature can attempt to automatically determine the bytesTotal at runtime (there is a slight performance penalty for this, however - see LoaderMax's documentation for details).
 
autoPlay:Boolean (default = true) — By default, the MP3 will begin playing as soon as it has been adequately buffered, but to prevent it from playing initially, set autoPlay to false.
 
onComplete:Function (default = null) — A handler function for LoaderEvent.COMPLETE events which are dispatched when the loader has finished loading successfully. Make sure your onComplete function accepts a single parameter of type LoaderEvent (com.greensock.events.LoaderEvent).
 
onProgress:Function (default = null) — A handler function for LoaderEvent.PROGRESS events which are dispatched whenever the bytesLoaded changes. Make sure your onProgress function accepts a single parameter of type LoaderEvent (com.greensock.events.LoaderEvent). You can use the LoaderEvent's target.progress to get the loader's progress value or use its target.bytesLoaded and target.bytesTotal.
 
onFail:Function (default = null) — A handler function for LoaderEvent.FAIL events which are dispatched whenever the loader fails and its status changes to LoaderStatus.FAILED. Make sure your onFail function accepts a single parameter of type LoaderEvent (com.greensock.events.LoaderEvent).
 
noCache:Boolean (default = false) — If true, a "cacheBusterID" parameter will be appended to the url with a random set of numbers to prevent caching (don't worry, this info is ignored when you LoaderMax.getLoader() or LoaderMax.getContent() by url or when you're running locally).
 
alternateURL:String (default = "") — If you define an alternateURL, the loader will initially try to load from its original url and if it fails, it will automatically (and permanently) change the loader's url to the alternateURL and try again. Think of it as a fallback or backup url. It is perfectly acceptable to use the same alternateURL for multiple loaders (maybe a default image for various ImageLoaders for example).
 
requireWithRoot:DisplayObject (default = null) — LoaderMax supports subloading, where an object can be factored into a parent's loading progress. If you want LoaderMax to require this loader as part of its parent SWFLoader's progress, you must set the requireWithRoot property to your swf's root. For example, vars.requireWithRoot = this.root;.
Method detail
clone()method
public function clone():MP3LoaderVars

Clones the object.

Returns
MP3LoaderVars