From 8db22ad924288c1736ae183c3222f409c4783c6e Mon Sep 17 00:00:00 2001 From: Calvin Montgomery Date: Mon, 25 Sep 2017 18:55:58 -0700 Subject: [PATCH] Implement playerjs for streamable (#706) --- build-player.js | 2 + package.json | 2 +- player/playerjs.coffee | 89 +++ player/streamable.coffee | 12 + player/update.coffee | 4 +- templates/channel.pug | 1 + www/js/player.js | 139 ++++- www/js/playerjs-0.0.12.js | 1187 +++++++++++++++++++++++++++++++++++++ 8 files changed, 1430 insertions(+), 6 deletions(-) create mode 100644 player/playerjs.coffee create mode 100644 player/streamable.coffee create mode 100644 www/js/playerjs-0.0.12.js diff --git a/build-player.js b/build-player.js index 7383f61d..e062b2dc 100644 --- a/build-player.js +++ b/build-player.js @@ -8,6 +8,8 @@ var order = [ 'youtube.coffee', 'dailymotion.coffee', 'videojs.coffee', + 'playerjs.coffee', + 'streamable.coffee', 'gdrive-player.coffee', 'raw-file.coffee', 'soundcloud.coffee', diff --git a/package.json b/package.json index 1bb6c863..44e0d44b 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "author": "Calvin Montgomery", "name": "CyTube", "description": "Online media synchronizer and chat", - "version": "3.48.0", + "version": "3.49.0", "repository": { "url": "http://github.com/calzoneman/sync" }, diff --git a/player/playerjs.coffee b/player/playerjs.coffee new file mode 100644 index 00000000..1f90a368 --- /dev/null +++ b/player/playerjs.coffee @@ -0,0 +1,89 @@ +window.PlayerJSPlayer = class PlayerJSPlayer extends Player + constructor: (data) -> + if not (this instanceof PlayerJSPlayer) + return new PlayerJSPlayer(data) + + @load(data) + + load: (data) -> + @setMediaProperties(data) + @ready = false + @finishing = false + + if not data.meta.playerjs + throw new Error('Invalid input: missing meta.playerjs') + + waitUntilDefined(window, 'playerjs', => + iframe = $('