Adobe® AIR® API Reference for HTML Developers
Home  |  Show Classes List |  Index  |  Appendixes

Language Reference only       
Sound 
3D:
Context3D
Context3DBlendFactor
Context3DClearMask
Context3DCompareMode
Context3DProgramType
Context3DRenderMode
Context3DStencilAction
Context3DTextureFormat
Context3DTriangleFace
Context3DVertexBufferFormat
CubeTexture
IndexBuffer3D
Program3D
Stage3D
Texture
VertexBuffer3D
Air.net:
ServiceMonitor
SocketMonitor
URLMonitor
Air.update:
ApplicationUpdater
ApplicationUpdaterUI
DownloadErrorEvent
StatusFileUpdateErrorEvent
StatusFileUpdateEvent
StatusUpdateErrorEvent
StatusUpdateEvent
UpdateEvent
Data:
EncryptedLocalStore
SQLCollationType
SQLColumnNameStyle
SQLColumnSchema
SQLConnection
SQLError
SQLErrorEvent
SQLErrorOperation
SQLEvent
SQLIndexSchema
SQLMode
SQLResult
SQLSchema
SQLSchemaResult
SQLStatement
SQLTableSchema
SQLTransactionLockType
SQLTriggerSchema
SQLUpdateEvent
SQLViewSchema
Desktop:
Clipboard
ClipboardFormats
ClipboardTransferMode
DockIcon
Icon
InteractiveIcon
NativeApplication
NativeProcess
NativeProcessStartupInfo
NotificationType
SystemTrayIcon
Display:
BitmapData
NativeMenu
NativeMenuItem
Screen
Stage
StageDisplayState
StageQuality
Events:
ActivityEvent
AsyncErrorEvent
BrowserInvokeEvent
DataEvent
DatagramSocketDataEvent
DNSResolverEvent
DRMAuthenticateEvent
DRMStatusEvent
ErrorEvent
Event
EventDispatcher
FileListEvent
HTTPStatusEvent
InvokeEvent
InvokeEventReason
IOErrorEvent
LocationChangeEvent
MouseEvent
NativeProcessExitEvent
NetDataEvent
NetMonitorEvent
NetStatusEvent
OutputProgressEvent
ProgressEvent
SampleDataEvent
SecurityErrorEvent
ServerSocketConnectEvent
StatusEvent
StorageVolumeChangeEvent
TimerEvent
UncaughtErrorEvent
UncaughtErrorEvents
File:
File
FileMode
FileStream
StorageVolume
StorageVolumeInfo
Functions:
trace()
generateRandomBytes()
navigateToURL()
sendToURL()
Geom:
Matrix
Point
Rectangle
Media:
AudioDecoder
AudioPlaybackMode
H264Level
H264Profile
H264VideoStreamSettings
ID3Info
InputMediaStream
Microphone
MicrophoneEnhancedMode
MicrophoneEnhancedOptions
Sound
SoundChannel
SoundCodec
SoundLoaderContext
SoundMixer
SoundTransform
VideoCodec
VideoStatus
VideoStreamSettings
Native window:
NativeWindow
NativeWindowBoundsEvent
NativeWindowDisplayState
NativeWindowDisplayStateEvent
NativeWindowInitOptions
NativeWindowRenderMode
NativeWindowResize
NativeWindowSystemChrome
NativeWindowType
Net:
AAAARecord
ARecord
CertificateStatus
DatagramSocket
DNSResolver
FileFilter
InterfaceAddress
IPVersion
LocalConnection
MXRecord
NetConnection
NetMonitor
NetStreamAppendBytesAction
NetStreamMulticastInfo
NetworkInfo
NetworkInterface
ObjectEncoding
PTRRecord
ResourceRecord
Responder
SecureSocket
ServerSocket
SharedObject
SharedObjectFlushStatus
Socket
SRVRecord
URLLoader
URLLoaderDataFormat
URLRequest
URLRequestDefaults
URLRequestHeader
URLRequestMethod
URLStream
URLVariables
XMLSocket
Security:
ReferencesValidationSetting
RevocationCheckSettings
SignatureStatus
SignerTrustSettings
X500DistinguishedName
X509Certificate
XMLSignatureValidator
System:
Capabilities
Security
System
Updater
Ui:
Keyboard
KeyboardType
KeyLocation
Mouse
MouseCursorData
Utils:
Vector
ByteArray
Collator
CollatorMode
CompressionAlgorithm
CurrencyFormatter
CurrencyParseResult
DateTimeFormatter
DateTimeNameContext
DateTimeNameStyle
DateTimeStyle
Endian
HTMLLoader
HTMLPDFCapability
LastOperationStatus
LocaleID
NationalDigitsType
NumberFormatter
NumberParseResult
StringTools
Timer
window.runtime propertywindow.runtime.flash.media.Sound
InheritanceSound Inheritance EventDispatcher Inheritance Object

Runtime Versions: AIR 1.0,

The Sound class lets you work with sound in an application. The Sound class lets you create a Sound object, load and play an external MP3 file into that object, close the sound stream, and access data about the sound, such as information about the number of bytes in the stream and ID3 metadata. More detailed control of the sound is performed through the sound source — the SoundChannel or Microphone object for the sound — and through the properties in the SoundTransform class that control the output of the sound to the computer's speakers.

In Flash Player 10 and later and AIR 1.5 and later, you can also use this class to work with sound that is generated dynamically. In this case, the Sound object uses the function you assign to a sampleData event handler to poll for sound data. The sound is played as it is retrieved from a ByteArray object that you populate with sound data. You can use Sound.extract() to extract sound data from a Sound object, after which you can manipulate it before writing it back to the stream for playback.

To control sounds that are embedded in a SWF file, use the properties in the SoundMixer class.

When you use this class, consider the following security model:

  • Loading and playing a sound is not allowed if the calling file is in a network sandbox and the sound file to be loaded is local.
  • By default, loading and playing a sound is not allowed if the calling file is local and tries to load and play a remote sound. A user must grant explicit permission to allow this type of access.
  • Certain operations dealing with sound are restricted. The data in a loaded sound cannot be accessed by a file in a different domain unless you implement a cross-domain policy file. Sound-related APIs that fall under this restriction are Sound.id3, SoundMixer.computeSpectrum(), SoundMixer.bufferTime, and the SoundTransform class.

However, in Adobe AIR, content in the application security sandbox (content installed with the AIR application) are not restricted by these security limitations.

For more information related to security, see the Flash Player Developer Center Topic: Security.

View the examples

See also



Properties
 PropertyDefined By
  bytesLoaded : uint
[read-only] Returns the currently available number of bytes in this sound object.
Sound
  bytesTotal : int
[read-only] Returns the total number of bytes in this sound object.
Sound
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
  id3 : ID3Info
[read-only] Provides access to the metadata that is part of an MP3 file.
Sound
  isBuffering : Boolean
[read-only] Returns the buffering state of external MP3 files.
Sound
  isURLInaccessible : Boolean
[read-only] Indicates if the Sound.url property has been truncated.
Sound
  length : Number
[read-only] The length of the current sound in milliseconds.
Sound
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
  url : String
[read-only] The URL from which this sound was loaded.
Sound
Public Methods
 MethodDefined By
  
Sound(stream:URLRequest = null, context:SoundLoaderContext = null)
Creates a new Sound object.
Sound
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.
EventDispatcher
  
close():void
Closes the stream, causing any download of data to cease.
Sound
 Inherited
dispatchEvent(event:Event):Boolean
Dispatches an event into the event flow.
EventDispatcher
  
extract(target:ByteArray, length:Number, startPosition:Number = -1):Number
Extracts raw sound data from a Sound object.
Sound
 Inherited
hasEventListener(type:String):Boolean
Checks whether the EventDispatcher object has any listeners registered for a specific type of event.
EventDispatcher
 Inherited
hasOwnProperty(name:String):Boolean
Indicates whether an object has a specified property defined.
Object
 Inherited
isPrototypeOf(theClass:Object):Boolean
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
  
load(stream:URLRequest, context:SoundLoaderContext = null):void
Initiates loading of an external MP3 file from the specified URL.
Sound
  
loadCompressedDataFromByteArray(bytes:ByteArray, bytesLength:uint):void
load MP3 sound data from a ByteArray object into a Sound object.
Sound
  
loadPCMFromByteArray(bytes:ByteArray, samples:uint, format:String = "float", stereo:Boolean = true, sampleRate:Number = 44100.0):void
load PCM 32-bit floating point sound data from a ByteArray object into a Sound object.
Sound
  
play(startTime:Number = 0, loops:int = 0, sndTransform:flash.media:SoundTransform = null):SoundChannel
Generates a new SoundChannel object to play back the sound.
Sound
 Inherited
propertyIsEnumerable(name:String):Boolean
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Removes a listener from the EventDispatcher object.
EventDispatcher
 Inherited
setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
toLocaleString():String
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
toString():String
Returns the string representation of the specified object.
Object
 Inherited
valueOf():Object
Returns the primitive value of the specified object.
Object
 Inherited
willTrigger(type:String):Boolean
Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type.
EventDispatcher
Events
 Event Summary Defined By
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active.EventDispatcher
  Dispatched when data has loaded successfully.Sound
 Inherited[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive.EventDispatcher
  Dispatched by a Sound object when ID3 data is available for an MP3 sound.Sound
  Dispatched when an input/output error occurs that causes a load operation to fail.Sound
  Dispatched when a load operation starts.Sound
  Dispatched when data is received as a load operation progresses.Sound
  Dispatched when the runtime requests new audio data.Sound
Property Detail

bytesLoaded

property
bytesLoaded:uint  [read-only]

Runtime Versions: AIR 1.0,

Returns the currently available number of bytes in this sound object. This property is usually useful only for externally loaded files.

bytesTotal

property 
bytesTotal:int  [read-only]

Runtime Versions: AIR 1.0,

Returns the total number of bytes in this sound object.

id3

property 
id3:ID3Info  [read-only]

Runtime Versions: AIR 1.0,

Provides access to the metadata that is part of an MP3 file.

MP3 sound files can contain ID3 tags, which provide metadata about the file. If an MP3 sound that you load using the Sound.load() method contains ID3 tags, you can query these properties. Only ID3 tags that use the UTF-8 character set are supported.

AIR supports ID3 2.0 tags, specifically 2.3 and 2.4. The following tables list the standard ID3 2.0 tags and the type of content the tags represent. The Sound.id3 property provides access to these tags through the format my_sound.id3.COMM, my_sound.id3.TIME, and so on. The first table describes tags that can be accessed either through the ID3 2.0 property name or the ActionScript property name. The second table describes ID3 tags that are supported but do not have predefined properties in ActionScript.

ID3 2.0 tagCorresponding Sound class property
COMMSound.id3.comment
TALBSound.id3.album
TCONSound.id3.genre
TIT2Sound.id3.songName
TPE1Sound.id3.artist
TRCKSound.id3.track
TYERSound.id3.year

The following table describes ID3 tags that are supported but do not have predefined properties in the Sound class. You access them by calling mySound.id3.TFLT, mySound.id3.TIME, and so on. NOTE: None of these tags are supported in Flash Lite 4.

PropertyDescription
TFLTFile type
TIMETime
TIT1Content group description
TIT2Title/song name/content description
TIT3Subtitle/description refinement
TKEYInitial key
TLANLanguages
TLENLength
TMEDMedia type
TOALOriginal album/movie/show title
TOFNOriginal filename
TOLYOriginal lyricists/text writers
TOPEOriginal artists/performers
TORYOriginal release year
TOWNFile owner/licensee
TPE1Lead performers/soloists
TPE2Band/orchestra/accompaniment
TPE3Conductor/performer refinement
TPE4Interpreted, remixed, or otherwise modified by
TPOSPart of a set
TPUBPublisher
TRCKTrack number/position in set
TRDARecording dates
TRSNInternet radio station name
TRSOInternet radio station owner
TSIZSize
TSRCISRC (international standard recording code)
TSSESoftware/hardware and settings used for encoding
TYERYear
WXXXURL link frame

When using this property, consider the Flash Player security model:

  • The id3 property of a Sound object is always permitted for SWF files that are in the same security sandbox as the sound file. For files in other sandboxes, there are security checks.
  • When you load the sound, using the load() method of the Sound class, you can specify a context parameter, which is a SoundLoaderContext object. If you set the checkPolicyFile property of the SoundLoaderContext object to true, Flash Player checks for a URL policy file on the server from which the sound is loaded. If a policy file exists and permits access from the domain of the loading SWF file, then the file is allowed to access the id3 property of the Sound object; otherwise it is not.

However, in Adobe AIR, content in the application security sandbox (content installed with the AIR application) are not restricted by these security limitations.

For more information related to security, see the Flash Player Developer Center Topic: Security.

See also

isBuffering

property 
isBuffering:Boolean  [read-only]

Runtime Versions: AIR 1.0,

Returns the buffering state of external MP3 files. If the value is true, any playback is currently suspended while the object waits for more data.

isURLInaccessible

property 
isURLInaccessible:Boolean  [read-only]

Runtime Versions:  2

Indicates if the Sound.url property has been truncated. When the isURLInaccessible value is true the Sound.url value is only the domain of the final URL from which the sound loaded. For example, the property is truncated if the sound is loaded from http://www.adobe.com/assets/hello.mp3, and the Sound.url property has the value http://www.adobe.com. The isURLInaccessible value is true only when all of the following are also true:

  • An HTTP redirect occurred while loading the sound file.
  • The SWF file calling Sound.load() is from a different domain than the sound file's final URL.
  • The SWF file calling Sound.load() does not have permission to access the sound file. Permission is granted to access the sound file the same way permission is granted for the Sound.id3 property: establish a policy file and use the SoundLoaderContext.checkPolicyFile property.

Note: The isURLInaccessible property was added for Flash Player 10.1 and AIR 2.0. However, this property is made available to SWF files of all versions when the Flash runtime supports it. So, using some authoring tools in "strict mode" causes a compilation error. To work around the error use the indirect syntax mySound["isURLInaccessible"], or disable strict mode. If you are using Flash Professional CS5 or Flex SDK 4.1, you can use and compile this API for runtimes released before Flash Player 10.1 and AIR 2.

For application content in AIR, the value of this property is always false.

See also

length

property 
length:Number  [read-only]

Runtime Versions: AIR 1.0,

The length of the current sound in milliseconds.

url

property 
url:String  [read-only]

Runtime Versions: AIR 1.0,

The URL from which this sound was loaded. This property is applicable only to Sound objects that were loaded using the Sound.load() method. For Sound objects that are associated with a sound asset from a SWF file's library, the value of the url property is null.

When you first call Sound.load(), the url property initially has a value of null, because the final URL is not yet known. The url property will have a non-null value as soon as an open event is dispatched from the Sound object.

The url property contains the final, absolute URL from which a sound was loaded. The value of url is usually the same as the value passed to the stream parameter of Sound.load(). However, if you passed a relative URL to Sound.load() the value of the url property represents the absolute URL. Additionally, if the original URL request is redirected by an HTTP server, the value of the url property reflects the final URL from which the sound file was actually downloaded. This reporting of an absolute, final URL is equivalent to the behavior of LoaderInfo.url.

In some cases, the value of the url property is truncated; see the isURLInaccessible property for details.

See also

Constructor Detail

Sound

()Constructor
public function Sound(stream:URLRequest = null, context:SoundLoaderContext = null)

Runtime Versions: AIR 1.0,

Creates a new Sound object. If you pass a valid URLRequest object to the Sound constructor, the constructor automatically calls the load() function for the Sound object. If you do not pass a valid URLRequest object to the Sound constructor, you must call the load() function for the Sound object yourself, or the stream will not load.

Once load() is called on a Sound object, you can't later load a different sound file into that Sound object. To load a different sound file, create a new Sound object.

In Flash Player 10 and later and AIR 1.5 and later, instead of using load(), you can use the sampleData event handler to load sound dynamically into the Sound object.

Parameters
stream:URLRequest (default = null) — The URL that points to an external MP3 file.
 
context:SoundLoaderContext (default = null) — An optional SoundLoader context object, which can define the buffer time (the minimum number of milliseconds of MP3 data to hold in the Sound object's buffer) and can specify whether the application should check for a cross-domain policy file prior to loading the sound.
Method Detail

close

()method
public function close():void

Runtime Versions: AIR 1.0,

Closes the stream, causing any download of data to cease. No data may be read from the stream after the close() method is called.


Throws
IOError — The stream could not be closed, or the stream was not open.

extract

()method 
public function extract(target:ByteArray, length:Number, startPosition:Number = -1):Number

Runtime Versions:  1.5

Extracts raw sound data from a Sound object.

This method is designed to be used when you are working with dynamically generated audio, using a function you assign to the sampleData event for a different Sound object. That is, you can use this method to extract sound data from a Sound object. Then you can write the data to the byte array that another Sound object is using to stream dynamic audio.

The audio data is placed in the target byte array starting from the current position of the byte array. The audio data is always exposed as 44100 Hz Stereo. The sample type is a 32-bit floating-point value, which can be converted to a Number using ByteArray.readFloat().

Parameters

target:ByteArray — A ByteArray object in which the extracted sound samples are placed.
 
length:Number — The number of sound samples to extract. A sample contains both the left and right channels — that is, two 32-bit floating-point values.
 
startPosition:Number (default = -1) — The sample at which extraction begins. If you don't specify a value, the first call to Sound.extract() starts at the beginning of the sound; subsequent calls without a value for startPosition progress sequentially through the file.

Returns
Number — The number of samples written to the ByteArray specified in the target parameter.

See also

load

()method 
public function load(stream:URLRequest, context:SoundLoaderContext = null):void

Runtime Versions: AIR 1.0,

Initiates loading of an external MP3 file from the specified URL. If you provide a valid URLRequest object to the Sound constructor, the constructor calls Sound.load() for you. You only need to call Sound.load() yourself if you don't pass a valid URLRequest object to the Sound constructor or you pass a null value.

Once load() is called on a Sound object, you can't later load a different sound file into that Sound object. To load a different sound file, create a new Sound object.

For more information related to security, see the Flash Player Developer Center Topic: Security.

Parameters

stream:URLRequest — A URL that points to an external MP3 file.
 
context:SoundLoaderContext (default = null) — An optional SoundLoader context object, which can define the buffer time (the minimum number of milliseconds of MP3 data to hold in the Sound object's buffer) and can specify whether the application should check for a cross-domain policy file prior to loading the sound.


Throws
IOError — A network error caused the load to fail.
 
SecurityError — Local untrusted files may not communicate with the Internet. You can work around this by reclassifying this file as trusted.
 
SecurityError — You cannot connect to commonly reserved ports. For a complete list of blocked ports, see "Restricting Networking APIs" in the ActionScript 3.0 Developer's Guide.
 
IOError — The digest property of the stream object is not null. You should only set the digest property of a URLRequest object when calling the URLLoader.load() method when loading a SWZ file (an Adobe platform component).

loadCompressedDataFromByteArray

()method 
public function loadCompressedDataFromByteArray(bytes:ByteArray, bytesLength:uint):void

Runtime Versions: AIR 1.0,

load MP3 sound data from a ByteArray object into a Sound object. The data will be read from the current ByteArray position and will leave the ByteArray position at the end of the specified bytes length once finished. If the MP3 sound data contains ID3 data ID3 events will be dispatched during this function call. This function will throw an exception if the ByteArray object does not contain enough data.

Parameters

bytes:ByteArray
 
bytesLength:uint

loadPCMFromByteArray

()method 
public function loadPCMFromByteArray(bytes:ByteArray, samples:uint, format:String = "float", stereo:Boolean = true, sampleRate:Number = 44100.0):void

Runtime Versions: AIR 1.0,

load PCM 32-bit floating point sound data from a ByteArray object into a Sound object. The data will be read from the current ByteArray position and will leave the ByteArray position at the end of the specified sample length multiplied by either 1 channel or 2 channels if the stereo flag is set once finished. This function will throw an exception if the ByteArray object does not contain enough data.

Parameters

bytes:ByteArray
 
samples:uint
 
format:String (default = "float")
 
stereo:Boolean (default = true)
 
sampleRate:Number (default = 44100.0)

play

()method 
public function play(startTime:Number = 0, loops:int = 0, sndTransform:flash.media:SoundTransform = null):SoundChannel

Runtime Versions: AIR 1.0,

Generates a new SoundChannel object to play back the sound. This method returns a SoundChannel object, which you access to stop the sound and to monitor volume. (To control the volume, panning, and balance, access the SoundTransform object assigned to the sound channel.)

Parameters

startTime:Number (default = 0) — The initial position in milliseconds at which playback should start.
 
loops:int (default = 0) — Defines the number of times a sound loops back to the startTime value before the sound channel stops playback.
 
sndTransform:flash.media:SoundTransform (default = null) — The initial SoundTransform object assigned to the sound channel.

Returns
SoundChannel — A SoundChannel object, which you use to control the sound. This method returns null if you have no sound card or if you run out of available sound channels. The maximum number of sound channels available at once is 32.

See also

Event Detail

complete

Event
Event Object Type: flash.events.Event
property Event.type = flash.events.Event.COMPLETE

Runtime Versions: AIR 1.0,

Dispatched when data has loaded successfully.

The Event.COMPLETE constant defines the value of the type property of a complete event object.

This event has the following properties:

PropertyValue
bubblesfalse
cancelablefalse; there is no default behavior to cancel.
currentTargetThe object that is actively processing the Event object with an event listener.
targetThe network object that has completed loading.

See also

id3

Event  
Event Object Type: flash.events.Event
property Event.type = flash.events.Event.ID3

Runtime Versions: AIR 1.0,

Dispatched by a Sound object when ID3 data is available for an MP3 sound.

The Event.ID3 constant defines the value of the type property of an id3 event object.

This event has the following properties:

PropertyValue
bubblesfalse
cancelablefalse; there is no default behavior to cancel.
currentTargetThe object that is actively processing the Event object with an event listener.
targetThe Sound object loading the MP3 for which ID3 data is now available. The target is not always the object in the display list that registered the event listener. Use the currentTarget property to access the object in the display list that is currently processing the event.

See also

ioError

Event  
Event Object Type: flash.events.IOErrorEvent
property IOErrorEvent.type = flash.events.IOErrorEvent.IO_ERROR

Runtime Versions: AIR 1.0,

Dispatched when an input/output error occurs that causes a load operation to fail.

Defines the value of the type property of an ioError event object.

This event has the following properties:

PropertyValue
bubblesfalse
cancelablefalse; there is no default behavior to cancel.
currentTargetThe object that is actively processing the Event object with an event listener.
errorIDA reference number associated with the specific error (AIR only).
targetThe network object experiencing the input/output error.
textText to be displayed as an error message.

See also

open

Event  
Event Object Type: flash.events.Event
property Event.type = flash.events.Event.OPEN

Runtime Versions: AIR 1.0,

Dispatched when a load operation starts.

The Event.OPEN constant defines the value of the type property of an open event object.

This event has the following properties:

PropertyValue
bubblesfalse
cancelablefalse; there is no default behavior to cancel.
currentTargetThe object that is actively processing the Event object with an event listener.
targetThe network object that has opened a connection.

See also

progress

Event  
Event Object Type: flash.events.ProgressEvent
property ProgressEvent.type = flash.events.ProgressEvent.PROGRESS

Runtime Versions: AIR 1.0,

Dispatched when data is received as a load operation progresses.

Defines the value of the type property of a progress event object.

This event has the following properties:

PropertyValue
bubblesfalse
bytesLoadedThe number of items or bytes loaded at the time the listener processes the event.
bytesTotalThe total number of items or bytes that ultimately will be loaded if the loading process succeeds.
cancelablefalse; there is no default behavior to cancel.
currentTargetThe object that is actively processing the Event object with an event listener.
targetThe object reporting progress.

See also

sampleData

Event  
Event Object Type: flash.events.SampleDataEvent
property SampleDataEvent.type = flash.events.SampleDataEvent.SAMPLE_DATA

Runtime Versions:  1.5

Dispatched when the runtime requests new audio data.

Defines the value of the type property of a SampleDataEvent event object.

This event has the following properties:

PropertyValue
bubblesfalse
cancelablefalse; there is no default behavior to cancel.
positionThe point from which audio data is provided.

See also

Examples

The following example displays information about sound events that take place as an MP3 file is opened and played.

Note: To test this example, do the following:

  1. Add the AIRAliases.js file to the project directory.
  2. Place a file named MySound.mp3 in the same project directory.
  3. Create an application descriptor file for the project, and test the project using ADL.
<html>
    <head>
      <script src="AIRAliases.js" />
      <script>
        function init() {
            var request = new air.URLRequest("app://MySound.mp3");
            var soundFactory = new air.Sound();
            soundFactory.addEventListener(air.Event.COMPLETE, completeHandler);
            soundFactory.addEventListener(air.Event.ID3, id3Handler);
            soundFactory.addEventListener(air.IOErrorEvent.IO_ERROR, ioErrorHandler);
            soundFactory.addEventListener(air.ProgressEvent.PROGRESS, progressHandler);
            soundFactory.load(request);
            song = soundFactory.play();
        }

        function completeHandler(event) {
            air.trace("completeHandler: " + event);
        }

        function id3Handler(event) {
            air.trace("id3Handler: " + event);
        }

        function ioErrorHandler(event) {
            air.trace("ioErrorHandler: " + event);
        }

        function progressHandler(event) {
            air.trace("progressHandler: " + event);
        }
      </script>
    </head>
    <body onload='init()'>
    </body>
</html>