Antiblanks Multi Media Player v1.0
About the Multi Media Player
The Antiblanks Multi Media Player is a package developed to sit on top of the Jquery library.
The Multi Media Player serves as an interface to control playback of media from various different sources,
in this version of the player only YouTube and SoundCloud are supported but it is documented below how to
add additional media players if required.
Creating the Multi Media Player instance
To create a multi media player instance call Antiblanks.multiMediaPlayerInit();
You must define which media players you want to add to the multi media player by passing in an array of media player objects,
media player objects must contain the following objects:
• mediaPlayerType The type of media player (defined within each media player class)
• mediaPlayerClass The media player class name
Adding a new media player type
To add a new media player type you need to do the following:
1. Copy the MediaPlayer.Empty.js file and rename it to your new type in the /players directory i.e; MediaPlayer.MyNewType.js
2. Open the file,
• Rename the type definition: Antiblanks.MediaPlayerType.EMPTY = "MediaPlayer.Empty";
• Rename the track data object: Antiblanks.EmptyMediaPlayerTrackData
• Rename the class: Antiblanks.EmptyMediaPlayer
• Finally fill out all the empty methods with logic on how to interact with your player
3. Once you have finished you can add your player to the multi media player as above and you are ready to go...
Antiblanks.multiMediaPlayerInit([
{ mediaPlayerType: Antiblanks.MediaPlayerType.MY_NEW_TYPE, mediaPlayerClass: 'MyNewTypeMediaPlayer' }
])
Loading and playing media
To load and play media call the following method: multiMediaPlayerInstance.loadAndPlay(@loadAndPlayObjectOrObjects);
Where @loadAndPlayObject must contain the following properties:
• mediaPLayerType: The media player type, this can be one of:
1. Antiblanks.MediaPlayerType.YOU_TUBE
2. Antiblanks.MediaPlayerType.SOUND_CLOUD
• trackUrl: The track URL for the desired media
1. For YouTube this is the video id i.e; S_jQ2XPQg0I
2. For SoundCloud this is the local path to the track i.e; /tracks/293
• timeInMs: The time from which you want playback to start (usually set to 0)
And @loadAndPlayObject can contain the following properties:
Note: You can pass a single object or an array of objects if you wish to add a playlist
• trackId: The unique track id for accessing the track once it has been loaded,
if no track id is supplied one will be created
To load media you can call one of the following methods,
calling any of these methods will not start playback so can be called after an initial playlist has been loaded
regardless of whether it is already playing:
1. multiMediaPlayerInstance.loadAtStart(@loadAndPlayObjectOrObjects);
2. multiMediaPlayerInstance.loadAtEnd(@loadAndPlayObjectOrObjects);
3. multiMediaPlayerInstance.loadAfter(@loadAndPlayObjectOrObjects, @afterTrackIndexOrId);
To play media which is already loaded use the following methods
1. multiMediaPlayerInstance.playTrackById(@trackId); to play a loaded track by it's unique id
2. multiMediaPlayerInstance.playTrackByIndex(@trackIndex); to play a loaded track by it's current index
3. multiMediaPlayerInstance.playNextTrack(); to play the next queued track
4. multiMediaPlayerInstance.playPreviousTrack(); to play the previous queued track
Multi Media Player events
You can listen to the following multi media player events:
1. Antiblanks.MultiMediaPlayerEvent.STATE_CHANGE dispatched when the media players state changes
2. Antiblanks.MultiMediaPlayerEvent.PROGRESS dispatched on progress of current playing media
3. Antiblanks.MultiMediaPlayerEvent.COMPLETE dispatched on completion of current playing media
4. Antiblanks.MultiMediaPlayerEvent.INIT dispatched on Initiation of the current media player type
5. Antiblanks.MultiMediaPlayerEvent.ERROR dispatched on error within the current media player type
6. Antiblanks.MultiMediaPlayerEvent.VOLUME_CHANGE dispatched on volume changed
7. Antiblanks.MultiMediaPlayerEvent.MUTE dispatched on player muted
8. Antiblanks.MultiMediaPlayerEvent.UNMUTE dispatched on player unmuted