API Documentation for: 0.5.1
Show:

FlashPlugin Class

Defined in: FlashPlugin:41
Module: SoundJS

Play sounds using a Flash instance. This plugin is not used by default, and must be registered manually in Sound 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 FlashPlugin-X.X.X.min.js file. You must ensure that BASE_PATH is set when using this plugin, so that the script can find the swf.

Example

 createjs.FlashPlugin.BASE_PATH = "../src/SoundJS/";
 createjs.Sound.registerPlugins([createjs.WebAudioPlugin, createjs.HTMLAudioPlugin, createjs.FlashPlugin]);
 // Adds FlashPlugin 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 HTML 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 therefore cannot be addressed by SoundJS.

Constructor

FlashPlugin

()

Defined in FlashPlugin:41

Methods

create

(
  • src
)
SoundInstance

Defined in create:402

Create a sound instance. If the sound has not been preloaded, it is internally preloaded here.

Parameters:

  • src String

    The sound source to use.

Returns:

SoundInstance: A sound instance for playback and control.

flashLog

(
  • data
)

Defined in flashLog:546

Used to output traces from Flash to the console, if FlashPlugin/showOutput is true.

Parameters:

  • data String

    The information to be output.

generateCapabiities

() protected static

Determine the capabilities of the plugin. Used internally. Please see the Sound API getCapabilities method for an overview of plugin capabilities.

getVolume

()

Defined in getVolume:483

Available since 0.4.0

Get the master volume of the plugin, which affects all SoundInstances.

Returns:

The volume level, between 0 and 1.

handleErrorEvent

(
  • error
)

Handles error events from Flash. Note this function currently does not process any events.

Parameters:

  • error String

    Indicates the error.

handleEvent

(
  • method
)

Defined in handleEvent:611

Handles events from Flash intended for the FlashPlugin class. Currently only a "ready" event is processed.

Parameters:

  • method String

    Indicates the method to run.

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.

handlePreloadEvent

(
  • flashId
  • method
)

Handles events from Flash and routes communication to a Loader via the Flash ID. The method and arguments from Flash are run directly on the sound loader.

Parameters:

  • flashId String

    Used to identify the loader instance.

  • method String

    Indicates the method to run.

handleSoundEvent

(
  • flashId
  • method
)

Handles events from Flash, and routes communication to a SoundInstance via the Flash ID. The method and arguments from Flash are run directly on the sound instance.

Parameters:

  • flashId String

    Used to identify the SoundInstance.

  • method String

    Indicates the method to run.

handleSWFReady

(
  • event
)
protected

Defined in handleSWFReady:294

The SWF used for sound preloading and playback has been initialized.

Parameters:

  • event Object

    Contains a reference to the swf.

handleTimeout

() protected

Defined in handleTimeout:337

The callback when Flash does not initialize. This usually means the SWF is missing or incorrectly pathed.

init

() protected

Defined in init:257

An initialization function run by the constructor

isPreloadStarted

(
  • src
)
Boolean

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

Defined in isSupported:93

Determine if the plugin can be used in the current browser/OS.

Returns:

Boolean: If the plugin can be initialized.

preload

(
  • src
  • instance
  • basePath
)

Defined in preload:433

Preload a sound instance. This plugin uses Flash to preload and play all sounds.

Parameters:

  • src String

    The path to the Sound

  • instance Object

    Not used in this plugin.

  • basePath String

    A file path to prepend to the src.

register

(
  • src
  • instances
)
Object

Defined in register:346

Pre-register a sound instance when preloading/setup. Note that the FlashPlugin will return a Loader instance for preloading since Flash can not access the browser cache consistently.

Parameters:

  • src String

    The source of the audio

  • instances Number

    The number of concurrently playing instances to allow for the channel at any time.

Returns:

Object: A result object, containing a tag for preloading purposes.

registerPreloadInstance

(
  • flashId
  • instance
)

Used to couple a Flash loader instance with a Loader instance

Parameters:

  • flashId String

    Used to identify the Loader.

  • instance Loader

    The actual instance.

registerSoundInstance

(
  • flashId
  • instance
)

Used to couple a Flash sound instance with a SoundInstance.

Parameters:

  • flashId String

    Used to identify the SoundInstance.

  • instance Loader

    The actual instance.

removeAllSounds

(
  • src
)

Defined in removeAllSounds:385

Available since 0.4.1

Remove all sounds added using register. Note this does not cancel a preload.

Parameters:

  • src String

    The sound URI to unload.

removeSound

(
  • src
)

Defined in removeSound:369

Available since 0.4.1

Remove a sound added using register. Note this does not cancel a preload.

Parameters:

  • src String

    The sound URI to unload.

setMute

(
  • value
)
Boolean

Defined in setMute:493

Available since 0.4.0

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 getMute, so this property is not used here.

Returns:

Boolean: If the mute call succeeds.

setVolume

(
  • value
)
Boolean

Defined in setVolume:458

Available since 0.4.0

Set the master volume of the plugin, which affects all SoundInstances.

Parameters:

  • value Number

    The volume to set, between 0 and 1.

Returns:

Boolean: If the plugin processes the setVolume call (true). The Sound class will affect all the instances manually otherwise.

unregisterPreloadInstance

(
  • flashId
)

Used to decouple a Loader instance from Flash.

Parameters:

  • flashId String

    Used to identify the Loader.

unregisterSoundInstance

(
  • flashId
  • instance
)

Used to decouple a SoundInstance from Flash. instance.

Parameters:

  • flashId String

    Used to identify the SoundInstance.

  • instance Loader

    The actual instance.

updateVolume

() Boolean protected

Defined in updateVolume:471

Available since 0.4.0

Internal function used to set the gain value for master audio. Should not be called externally.

Returns:

Properties

audioSources

Object protected

Defined in audioSources:144

An object hash indexed by ID that indicates if each source is loaded or loading.

BASE_PATH

String static

Defined in BASE_PATH:83

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

buildDate

String static

Defined in buildDate:19

The build date for this release in UTC format.

capabilities

Object static

Defined in capabilities:73

The capabilities of the plugin. This is generated via the WebAudioPlugin/generateCapabilities method. Please see the Sound getCapabilities method for a list of available capabilities.

container

HTMLDivElement protected

Defined in container:184

A reference to the DIV container that gets created to hold the Flash instance.

CONTAINER_ID

String protected

Defined in CONTAINER_ID:161

The id name of the DIV that gets created for Flash content.

Default: flashAudioContainer

flash

Object | Embed protected

Defined in flash:192

A reference to the Flash instance that gets created.

flashInstances

Object protected

Defined in flashInstances:209

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.

flashReady

Boolean

Defined in flashReady:200

Determines if the Flash object has been created and initialized. This is required to make ExternalInterface calls from JavaScript to Flash.

Default: false

preloadInstances

Object protected

Defined in preloadInstances:227

Available since 0.4.0

A hash of Sound Preload instances indexed by the src. This lookup is required to load sounds if internal preloading is tried when flash is not ready.

queuedInstances

Object protected

Defined in queuedInstances:237

An array of Sound Preload instances that are waiting to preload. Once Flash is initialized, the queued instances are preloaded.

showOutput

Boolean

Defined in showOutput:246

A developer flag to output all flash events to the console (if it exists). Used for debugging.

 createjs.Sound.activePlugin.showOutput = true;

Default: false

version

String static

Defined in version:10

The version string for this release.

volume

Number protected

Defined in volume:152

The internal volume value of the plugin.

Default: 1

WRAPPER_ID

String protected

Defined in WRAPPER_ID:170

Available since 0.4.1

The id name of the DIV wrapper that contains the Flash content.

Default: SoundJSFlashContainer