AudioTrack#

A representation of a single AudioTrack. If it is part of an AudioTrackList only one AudioTrack in the list will be enabled at a time.

Constructor#

new AudioTrack(optionsopt)#

Create an instance of this class.

Parameters:
NameTypeAttributesDefaultDescription
optionsObject<optional>
{}

Object of option names and values

Properties
NameTypeAttributesDefaultDescription
kindAudioTrack~Kind<optional>
''

A valid audio track kind

idstring<optional>
'vjs_track_' + Guid.newGUID()

A unique id for this AudioTrack.

labelstring<optional>
''

The menu label for this track.

languagestring<optional>
''

A valid two character language code.

enabledboolean<optional>

If this track is the one that is currently playing. If this track is part of an AudioTrackList, only one AudioTrack will be enabled.

See

Extends#

Members#

(protected) allowedEvents_#

An object containing event names as keys and booleans as values.

NOTE: If an event name is set to a true value here EventTarget#trigger will have extra functionality. See that function for more information.

Properties
NameTypeDescription
EventTarget.prototype.allowedEvents_

enabled :boolean#

If this AudioTrack is enabled or not. When setting this will fire AudioTrack#enabledchange if the state of enabled is changed.

Type:
  • boolean
Fires:

(readonly) id :string#

The id of this track. Cannot be changed after creation.

Type:
  • string
Overrides

(readonly) kind :string#

The kind of track that this is. Cannot be changed after creation.

Type:
  • string
Overrides

label :string#

The label of this track. Cannot be changed after creation.

Type:
  • string
Overrides
Fires:

(readonly) language :string#

The two letter language code for this track. Cannot be changed after creation.

Type:
  • string

Methods#

addEventListener()#

An alias of EventTarget#on. Allows EventTarget to mimic the standard DOM API.

any(type, fn)#

This function will add an event listener that gets triggered only once and is removed from all events. This is like adding an array of event listeners with EventTarget#on that calls EventTarget#off on all events the first time it is triggered.

Parameters:
NameTypeDescription
typestring | Array.<string>

An event name or an array of event names.

fnfunction

The function to be called once for each event name.

Overrides

dispatchEvent()#

An alias of EventTarget#trigger. Allows EventTarget to mimic the standard DOM API.

off(type, fn)#

Removes an event listener for a specific event from an instance of EventTarget. This makes it so that the event listener will no longer get called when the named event happens.

Parameters:
NameTypeDescription
typestring | Array.<string>

An event name or an array of event names.

fnfunction

The function to remove.

Overrides

on(type, fn)#

Adds an event listener to an instance of an EventTarget. An event listener is a function that will get called when an event with a certain name gets triggered.

Parameters:
NameTypeDescription
typestring | Array.<string>

An event name or an array of event names.

fnfunction

The function to call with EventTargets

Overrides

one(type, fn)#

This function will add an event listener that gets triggered only once. After the first trigger it will get removed. This is like adding an event listener with EventTarget#on that calls EventTarget#off on itself.

Parameters:
NameTypeDescription
typestring | Array.<string>

An event name or an array of event names.

fnfunction

The function to be called once for each event name.

Overrides

removeEventListener()#

An alias of EventTarget#off. Allows EventTarget to mimic the standard DOM API.

trigger(event)#

This function causes an event to happen. This will then cause any event listeners that are waiting for that event, to get called. If there are no event listeners for an event then nothing will happen.

If the name of the Event that is being triggered is in EventTarget.allowedEvents_. Trigger will also call the on + uppercaseEventName function.

Example: 'click' is in EventTarget.allowedEvents_, so, trigger will attempt to call onClick if it exists.

Parameters:
NameTypeDescription
eventstring | EventTarget~Event | Object

The name of the event, an Event, or an object with a key of type set to an event name.

Overrides

Type Definitions#

Kind#

All possible AudioTrackKinds

Events#

enabledchange#

An event that fires when enabled changes on this track. This allows the AudioTrackList that holds this track to act accordingly.

Note: This is not part of the spec! Native tracks will do this internally without an event.

Type:

labelchange#

An event that fires when label changes on this track.

Note: This is not part of the spec!

Type: