Playlist Player SDK (legacy)
This guide explains how to embed a custom playlist and custom-build a playlist player using our JavaScript Playlist Player SDK. You can choose any combination of audios from a project.
The JavaScript Playlist Player SDK is client-side JavaScript library that is separate from the API. You connect to it differently, and it gives you a different range of options.
Install
You can install the JavaScript Playlist Player and SDK through NPM:
Or, you can also reference an up‐to‐date version on our CDN:
Initialize
To initialize the JavaScript Playlist Player, use the following:
To intialize the JavaScript Playlist Player with the SDK, import the package:
Then use the following:
The Playlist Player SDK will now be available, and you will be able to use the JavaScript Playlist Player SDK.
Required parameters
player
string
To use the Playlist Player set this to: PlaylistPlayer
projectId
integer (conditional)
Set the ProjectId
to get the default Project Playlist with latest audios
playlistId
integer (conditional)
Set the PlaylistId
to get a custom playlist
playlist
array (conditional)
Array of objects like { key: value }
where key
can be one of (podcastId
| externalId
| playlistId
) The array should be sorted in the order that you wish the audios to appear in the playlist
Example for array of playlist with podcast ID's:
Example for array of playlist with podcast ID and Playlist ID:
Optional parameters
renderNode
string
This is the ID of the container element. The default is set to beyondwords-player
UIEnabled
boolean
Set to false to use your own UI
publisherColor
string
Set the color of the Player icons and progress bar, e.g, #000000
publisherTextColor
string
Set the color of the Player text, e.g, #000000
publisherBgColor
string
Set the color of the Player background, e.g, #F5F5F5
visibleItems
integer
The number of items to show in the playlist before a scrollbar appears
Player methods
Once the Player is set up, various methods are available to control the audio, set the Player language, or obtain information about the Player state.
Player methods can be called directly, e.g. AppInst.play()
, or you can create an new object within the window object and add the methods you want available, as shown here:
Methods can be called like so: YourApp.paused()
.
Methods
play()
-
Play the audio
The play()
also returns a promise which can be resolved when playback has started, or is rejected if for some reason playback cannot be started.
pause()
-
Pause the audio
changeLang(lang)
string
Set the text language in the player, e.g. en_GB
currentTime()
-
Get the current time in seconds, rounded to two decimal places, e.g. 28.05
duration()
-
Get the total duration of the audio in seconds, rounded to two decimal places, e.g. 28.05
remainingTime()
-
Get the time remaining of the audio in seconds, rounded to two decimal places, e.g. 28.05
changeCurrentTime(seconds)
number
Set play position between 0 and total duration in seconds, rounded to two decimal places, e.g. 18.05
rewind(seconds)
number
Rewind the playback by the specified seek time in seconds, e.g. 15.0
forward(seconds)
number
Forward the playback by the specified seek time in seconds, e.g. 15.0
getCurrent()
-
Get the current audio index in the playlist
setCurrent(index)
number
Set audio index in the playlist
previous()
-
Skip to the previous audio in the playlist
next()
-
Skip to the next audio in the playlist
getPlaylist()
-
Returns an array with a list of audio objects
getPlaylistItem(index)
number
Returns the audio object in that index
loadPlaylist(arrayIDs)
Returns a promise from which you can get data from the parameter list
Example for parameter arrayIDs
:
Returns a promise list of audios:
isAudioReady(object)
promise
Checks whether the audio has been processed or not
playbackRate()
-
Get the playback rate
changePlaybackRate(number)
number
Set the playback rate. It accepts any numeric value from the following list: 0.5, 1, 1.25, 1.5, 2
currentMedia()
-
Get the media object being played.
changeColor(object)
object
Set the Player colors for light and dark modes.
Playlist Player events
You can run custom functions based on specific Playlist Player events using the on
and off
listener to bind your functions to the events:
appInst.events
supported a next methods
on(type, handler)
: Register an event handler for the given typeoff(type, handler)
: Remove an event handler for the given type
play
This event fires when playback is initiated.
Event data
duration
number
The total duration of the audio in seconds, rounded to two decimal places, e.g. 28.05
.
---
progress
number
The duration of the audio already played in seconds, rounded to two decimal places, e.g. 28.05
.
---
index
number
The index of the audio already played.
Sample event data
pause
This event fires when audio is paused.
Event data
duration
number
The total duration of the audio in seconds, rounded to two decimal places, e.g. 28.05
.
---
progress
number
The duration of the audio played, when the pause was triggered, in seconds, rounded to two decimal places, e.g. 28.05
.
---
index
number
The index of the audio already played.
Sample event data
timeUpdate
This event fires every 25ms during playback and indicates, in seconds, the duration of the audio that has been played, e.g. 28.05
.
Event data
duration
number
The total duration of the audio in seconds, rounded to two decimal places, e.g. 28.05
.
---
progress
number
The duration of the audio played in seconds, rounded to two decimal places, e.g. 28.05
.
---
index
number
The index of the audio already played.
Sample event data
playbackRate
This event fires when the playback rate of the audio in the Playlist Player changes.
Event data
playbackRate
number
The new playback rate, e.g. 1.5
.
ended
This event fires when the audio completes playback.
Event data
index
number
The index of the audio was ended.
Last updated