SoundJS v1.0.0 API Documentation : FlashAudioPlugin (original) (raw)
Play sounds using a Flash instance. This plugin is not used by default, and must be registered manually inSound using the registerPlugins method. This plugin is recommended to be included if sound support is required in older browsers such as IE8.
This plugin requires FlashAudioPlugin.swf and swfObject.js, which is compiled into the minified FlashAudioPlugin-X.X.X.min.js file. You must ensure that swfPathis set when using this plugin, so that the script can find the swf.
Example
createjs.FlashAudioPlugin.swfPath = "../src/soundjs/flashaudio";
createjs.Sound.registerPlugins([createjs.WebAudioPlugin, createjs.HTMLAudioPlugin, createjs.FlashAudioPlugin]);
// Adds FlashAudioPlugin as a fallback if WebAudio and HTMLAudio do not work.
Note that the SWF is embedded into a container DIV (with an id and classname of "SoundJSFlashContainer"), and will have an id of "flashAudioContainer". The container DIV is positioned 1 pixel off-screen to the left to avoid showing the 1x1 pixel white square.
Known Browser and OS issues for Flash Audio
All browsers
- There can be a delay in flash player starting playback of audio. This has been most noticeable in Firefox. Unfortunely this is an issue with the flash player and the browser and therefore cannot be addressed by SoundJS.
Constructor
Item Index
Methods
- _generateCapabilities static
- _handleFlashReady
- _handlePreloadComplete
- _handlePreloadError
- _handleSWFReady
- _updateVolume
- create
- getVolume
- isPreloadComplete
- isPreloadStarted
- isSupported static
- preload
- register
- removeAllSounds
- removeSound
- setMute
- setVolume
Properties
- _audioSources
- _capabilities static
- _container
- _CONTAINER_ID
- _flashInstances
- _flashPreloadInstances
- _REG_FLASHID static
- _UNREG_FLASHID static
- _volume
- _WRAPPER_ID
- buildDate static
- flash
- flashReady
- showOutput
- swfPath static
- version static
Methods
_generateCapabilities
() private static
Determine the capabilities of the plugin. Used internally. Please see the Sound API capabilitiesmethod for an overview of plugin capabilities.
_handleFlashReady
() protected
The Flash application that handles preloading and playback is ready. We wait for a callback from Flash to ensure that everything is in place before playback begins.
_handlePreloadComplete
protected
Handles internal preload completion.
_handlePreloadError
protected
Handles internal preload errors
_handleSWFReady
protected
The SWF used for sound preloading and playback has been initialized.
Parameters:
event
Object
Contains a reference to the swf.
_updateVolume
() Boolean protected
Internal function used to set the gain value for master audio. Should not be called externally.
Returns:
create
(
src
startTime
duration
)
Create a sound instance. If the sound has not been preloaded, it is internally preloaded here.
Parameters:
src
String
The sound source to use.startTime
Number
Audio sprite property used to apply an offset, in milliseconds.duration
Number
Audio sprite property used to set the time the clip plays for, in milliseconds.
Returns:
getVolume
() Number
Get the master volume of the plugin, which affects all SoundInstances.
Returns:
The volume level, between 0 and 1.
isPreloadComplete
Checks if preloading has finished for a specific source.
Parameters:
src
String
The sound URI to load.
Returns:
isPreloadStarted
Checks if preloading has started for a specific source. If the source is found, we can assume it is loading, or has already finished loading.
Parameters:
src
String
The sound URI to check.
Returns:
isSupported
() Boolean static
Determine if the plugin can be used in the current browser/OS.
Returns:
If the plugin can be initialized.
preload
Internally preload a sound.
Parameters:
loader
Loader
The sound URI to load.
register
Pre-register a sound for preloading and setup. This is called by Sound. Note all plugins provide a Loader
instance, which PreloadJScan use to assist with preloading.
Parameters:
loadItem
String
An Object containing the source of the audio Note that not every plugin will manage this value.
Returns:
A result object, containing a "tag" for preloading purposes.
removeAllSounds
Remove all sounds added using WebAudioPlugin/register. Note this does not cancel a preload.
Parameters:
src
String
The sound URI to unload.
removeSound
Remove a sound added using WebAudioPlugin/register. Note this does not cancel a preload.
Parameters:
src
String
The sound URI to unload.
setMute
Mute all sounds via the plugin.
Parameters:
value
Boolean
If all sound should be muted or not. Note that plugin-level muting just looks up the mute value of Sound muted, so this property is not used here.
Returns:
If the mute call succeeds.
setVolume
Set the master volume of the plugin, which affects all SoundInstances.
Parameters:
value
Number
The volume to set, between 0 and 1.
Returns:
If the plugin processes the setVolume call (true). The Sound class will affect all the instances manually otherwise.
Properties
_audioSources
Object protected
Object hash indexed by the source URI of each file to indicate if an audio source has begun loading, is currently loading, or has completed loading. Can be used to store non boolean data after loading is complete (for example arrayBuffers for web audio).
_capabilities
Object private static
The capabilities of the plugin. This is generated via the _generateCapabilitiesmethod. Please see the Sound capabilities method for a list of available capabilities.
_container
HTMLDivElement protected
A reference to the DIV container that gets created to hold the Flash instance.
_CONTAINER_ID
String protected
The id name of the DIV that gets created for Flash content.
Default: flashAudioContainer
_flashInstances
Object protected
A hash of SoundInstances indexed by the related ID in Flash. This lookup is required to connect sounds in JavaScript to their respective instances in Flash.
_flashPreloadInstances
Object protected
A hash of Sound Preload instances indexed by the related ID in Flash. This lookup is required to connect a preloading sound in Flash with its respective instance in JavaScript.
_REG_FLASHID
String private static
Event constant for the "registerFlashID" event for cleaner code.
Default: registerflashid
_UNREG_FLASHID
String private static
Event constant for the "unregisterFlashID" event for cleaner code.
Default: unregisterflashid
_volume
Number protected
The internal master volume value of the plugin.
Default: 1
_WRAPPER_ID
String protected
The id name of the DIV wrapper that contains the Flash content.
Default: SoundJSFlashContainer
buildDate
String static
The build date for this release in UTC format.
flash
Object | Embed protected
A reference to the Flash instance that gets created.
flashReady
Determines if the Flash object has been created and initialized. This is required to make ExternalInterface
calls from JavaScript to Flash.
Default: false
showOutput
A developer flag to output all flash events to the console (if it exists). Used for debugging.
createjs.Sound.activePlugin.showOutput = true;
Default: false
swfPath
String static
The path relative to the HTML page that the FlashAudioPlugin.swf resides. Note if this is not correct, this plugin will not work.
Default: src/SoundJS
version
String static
The version string for this release.