We expose a JavaScript API for our Flash Twitch player that gives flexibility and functionality to embedding. The IFrame embed does not yet have an external interface.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<script src="//ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
$(function () {
window.onPlayerEvent = function (data) {
data.forEach(function(event) {
if (event.event == "playerInit") {
var player = $("#twitch_embed_player")[0];
player.playVideo();
player.mute();
}
});
}
swfobject.embedSWF("//www-cdn.jtvnw.net/swflibs/TwitchPlayer.swf", "twitch_embed_player", "640", "400", "11", null,
{ "eventsCallback":"onPlayerEvent",
"embed":1,
"channel":"day9tv",
"auto_play":"true"},
{ "allowScriptAccess":"always",
"allowFullScreen":"true"});
});
</script>
</head>
<body>
<div id="twitch_embed_player">
</div>
</body>
</html>
Name | Description |
---|---|
isPaused |
Gets the playing status of the video. Returns boolean true or false |
loadStream |
Loads a given stream. Parameter is a channel name (as a String). |
loadVideo |
Loads a given video. Parameter is the video ID (as a String). |
mute |
Mutes the player. |
onlineStatus |
Returns the online status of the loaded stream. Values returned are online , offline , or unknown . |
pauseVideo |
If stream is online, will pause the player. |
playVideo |
If stream is online, will play the player. |
videoSeek |
Seeks a video. Parameter is seconds (as a Number) |
unmute |
Unmutes the player. |
Events are emitted through the eventsCallback Flash player parameter in the following form:
[
{
"event": "",
"data": {}
},
...
]
Event | Description | Data |
---|---|---|
streamLoaded |
Emitted when a stream is loaded in the video player |
{ channel: "test_stream", channelSteamId: null, videoId: null, videoLengthInSecs: 0, viewerSteamId: null } |
videoLoaded |
Emitted when a video is loaded in the video player |
{ channel: "test_stream", channelSteamId: null, videoId: "4345634", videoLengthInSecs: 15, viewerSteamId: null } |
online |
Emitted when the stream is online (emitted on stream load too) | {} |
offline |
Emitted when the stream goes offline | {} |
viewerCount |
The viewer count is emitted periodically for streams |
{ channel: "test_stream", viewers: 12975 } |
videoLoading |
Emitted when a stream or video is loading | {} |
playerInit |
Emitted when the player is loaded | {} |
videoPlaying |
Emitted when a stream or video starts playing | {} |
mouseScroll |
Emitted when the user scrolls over the video |
{ delta: 1 } |