From 152082d3525c9627c5b1c435ffe3d05807148784 Mon Sep 17 00:00:00 2001
From: Anton Schubert
Date: Fri, 22 Dec 2017 21:18:13 +0100
Subject: update clapprio and plugins
---
template/assemblies/player/dash.phtml | 24 +++++++++++++++---------
1 file changed, 15 insertions(+), 9 deletions(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/player/dash.phtml b/template/assemblies/player/dash.phtml
index 7048006..57f2ddc 100644
--- a/template/assemblies/player/dash.phtml
+++ b/template/assemblies/player/dash.phtml
@@ -1,4 +1,4 @@
-
+
@@ -19,8 +19,21 @@
shakaConfiguration: {
abr: {
defaultBandwidthEstimate: 600000
- },
+ }
},
+ levelSelectorConfig: {
+ labels: {
+ 7: 'HD',
+ 8: 'SD',
+ 9: 'Slides',
+ 10: 'HD',
+ 11: 'SD',
+ 12: 'Slides',
+ 13: 'HD',
+ 14: 'SD',
+ 15: 'Slides',
+ }
+ },
autoPlay: true,
parentId: '#player'
});
@@ -35,11 +48,4 @@
body.room .player-wrap.tab-content {
padding: 0;
}
-.level_selector[data-level-selector] {
- margin-top: 7px;
-}
-.level_selector[data-level-selector] button,
-.level_selector[data-level-selector] li {
- font-size: 12px;
-}
--
cgit v1.2.3
From 80f79007a7ddcfe51b441ff601bdc65e4fa2d40e Mon Sep 17 00:00:00 2001
From: Anton Schubert
Date: Fri, 22 Dec 2017 22:57:10 +0100
Subject: try to increase player robustness
---
template/assemblies/player/dash.phtml | 36 +++++++++++++++++++----------------
1 file changed, 20 insertions(+), 16 deletions(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/player/dash.phtml b/template/assemblies/player/dash.phtml
index 57f2ddc..9ca654b 100644
--- a/template/assemblies/player/dash.phtml
+++ b/template/assemblies/player/dash.phtml
@@ -17,23 +17,27 @@
width: "100%",
plugins: [DashShakaPlayback, LevelSelector, AudioSelector],
shakaConfiguration: {
- abr: {
- defaultBandwidthEstimate: 600000
- }
+ abr: {
+ defaultBandwidthEstimate: 600000
+ },
+ streaming: {
+ rebufferingGoal: 12,
+ jumpLargeGaps: true
+ }
+ },
+ levelSelectorConfig: {
+ labels: {
+ 7: 'HD',
+ 8: 'SD',
+ 9: 'Slides',
+ 10: 'HD',
+ 11: 'SD',
+ 12: 'Slides',
+ 13: 'HD',
+ 14: 'SD',
+ 15: 'Slides',
+ }
},
- levelSelectorConfig: {
- labels: {
- 7: 'HD',
- 8: 'SD',
- 9: 'Slides',
- 10: 'HD',
- 11: 'SD',
- 12: 'Slides',
- 13: 'HD',
- 14: 'SD',
- 15: 'Slides',
- }
- },
autoPlay: true,
parentId: '#player'
});
--
cgit v1.2.3
From 317f94d5e3c80f5b342208bad5192a0139a398ea Mon Sep 17 00:00:00 2001
From: Anton Schubert
Date: Sat, 23 Dec 2017 21:59:23 +0100
Subject: update adaptive player plugins for better hls
---
template/assemblies/player/dash.phtml | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/player/dash.phtml b/template/assemblies/player/dash.phtml
index 9ca654b..54f685c 100644
--- a/template/assemblies/player/dash.phtml
+++ b/template/assemblies/player/dash.phtml
@@ -11,9 +11,9 @@
interference with the new dash-player.
-->
--
cgit v1.2.3
From d29fa327630533e31a0b7bdea3c8bc25ef19e5ac Mon Sep 17 00:00:00 2001
From: Anton Schubert
Date: Thu, 28 Dec 2017 11:12:54 +0100
Subject: increase default bandwidth estimate for dash player to select sd
quality initially
---
template/assemblies/player/dash.phtml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/player/dash.phtml b/template/assemblies/player/dash.phtml
index 3ad61fd..ddfc48a 100644
--- a/template/assemblies/player/dash.phtml
+++ b/template/assemblies/player/dash.phtml
@@ -43,7 +43,7 @@
plugins: [DashShakaPlayback, LevelSelector, AudioSelector],
shakaConfiguration: {
abr: {
- defaultBandwidthEstimate: 600000
+ defaultBandwidthEstimate: 1000000
},
streaming: {
rebufferingGoal: 12,
--
cgit v1.2.3
From 870bacae02c922c795b2af4e39839c279168768b Mon Sep 17 00:00:00 2001
From: Anton Schubert
Date: Thu, 28 Dec 2017 12:27:51 +0100
Subject: serve simple webm as fallback for multiquality player
---
template/assemblies/player/dash.phtml | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/player/dash.phtml b/template/assemblies/player/dash.phtml
index ddfc48a..f447c09 100644
--- a/template/assemblies/player/dash.phtml
+++ b/template/assemblies/player/dash.phtml
@@ -36,9 +36,9 @@
});
}
- var createPlayer = function(url) {
- var player = new Clappr.Player({
- source: url,
+ var createPlayer = function(sources) {
+ return new Clappr.Player({
+ sources: sources,
width: "100%",
plugins: [DashShakaPlayback, LevelSelector, AudioSelector],
shakaConfiguration: {
@@ -74,12 +74,24 @@
});
}
- // Detect WebM capability, Select relay, Create player
- var hasWebM = document.createElement('video').canPlayType('video/webm') != "";
- var cdnUrl = hasWebM ? '=h($room->getDashManifestUrl())?>' : '=h($room->getHLSPlaylistUrl())?>';
- selectRelay(cdnUrl, function(relayUrl) {
- createPlayer(relayUrl);
- });
+ var hasMSE = 'MediaSource' in window,
+ hasWebM = document.createElement('video').canPlayType('video/webm') != "",
+ nativeHLS = document.createElement('video').canPlayType('application/vnd.apple.mpegURL') != "";
+
+ // Play Multiquality only if supported
+ if (hasMSE || nativeHLS) {
+ // Detect WebM capability, Select relay, Create player
+ var cdnUrl = hasWebM ? '=h($room->getDashManifestUrl())?>' : '=h($room->getHLSPlaylistUrl())?>';
+ selectRelay(cdnUrl, function(relayUrl) {
+ createPlayer([{source: relayUrl}]);
+ });
+ } else {
+ // Default to simple WebM playback
+ var player = createPlayer([{
+ source: "=h($stream->getVideoUrl('webm', 'hd'))?>",
+ mimeType: "video/webm"
+ }]);
+ }
}());
--
cgit v1.2.3
From 104f8c65255e96cd31f6d38c08aa91bca9e41439 Mon Sep 17 00:00:00 2001
From: dedeibel
Date: Fri, 29 Dec 2017 13:44:24 +0100
Subject: all: feedack CCH -> on site
---
template/assemblies/feedback.phtml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/feedback.phtml b/template/assemblies/feedback.phtml
index 6df80cc..d50daf4 100644
--- a/template/assemblies/feedback.phtml
+++ b/template/assemblies/feedback.phtml
@@ -12,8 +12,8 @@
-
-
+
+
--
cgit v1.2.3
From 080c1d085e4311b16ba7cfec47bddb9d1dc64243 Mon Sep 17 00:00:00 2001
From: Anton Schubert
Date: Sat, 30 Dec 2017 02:55:57 +0100
Subject: explicitely require vp9 + vorbis for dash playback
---
template/assemblies/player/dash.phtml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/player/dash.phtml b/template/assemblies/player/dash.phtml
index f447c09..a5344c7 100644
--- a/template/assemblies/player/dash.phtml
+++ b/template/assemblies/player/dash.phtml
@@ -75,7 +75,7 @@
}
var hasMSE = 'MediaSource' in window,
- hasWebM = document.createElement('video').canPlayType('video/webm') != "",
+ hasWebM = document.createElement('video').canPlayType('video/webm; codecs=vp9,vorbis') != "",
nativeHLS = document.createElement('video').canPlayType('application/vnd.apple.mpegURL') != "";
// Play Multiquality only if supported
--
cgit v1.2.3
From f36367abd9b1537b3b01463347d01b186844fbef Mon Sep 17 00:00:00 2001
From: Anton Schubert
Date: Sat, 30 Dec 2017 17:51:44 +0100
Subject: update shaka-player to 2.3.0, improve source-selection code for
multiquality player
---
template/assemblies/player/dash.phtml | 56 ++++++++++++++++++++++-------------
1 file changed, 35 insertions(+), 21 deletions(-)
(limited to 'template/assemblies')
diff --git a/template/assemblies/player/dash.phtml b/template/assemblies/player/dash.phtml
index a5344c7..24a3df6 100644
--- a/template/assemblies/player/dash.phtml
+++ b/template/assemblies/player/dash.phtml
@@ -25,9 +25,7 @@
setTimeout(selectRelay.bind(null, url, cb), 2000);
console.log("selected relay", relay);
- var proto = url.match(/^https?:\/\//),
- path = "/" + url.split("/").slice(3).join("/");
- cb(proto + relay + path)
+ cb(relay);
},
error: function(err) {
console.error("Error while selecting relay: ", err.status, err.statusText)
@@ -36,6 +34,12 @@
});
}
+ var getRelayUrl = function(relay, cdnUrl) {
+ var proto = cdnUrl.match(/^https?:\/\//),
+ path = "/" + cdnUrl.split("/").slice(3).join("/");
+ return proto + relay + path;
+ }
+
var createPlayer = function(sources) {
return new Clappr.Player({
sources: sources,
@@ -47,7 +51,12 @@
},
streaming: {
rebufferingGoal: 12,
- jumpLargeGaps: true
+ jumpLargeGaps: true,
+
+ // Todo: handle streaming failure
+ // failureCallback: function() {
+ // console.log("streaming failure callback", arguments)
+ // }
}
},
levelSelectorConfig: {
@@ -74,24 +83,29 @@
});
}
- var hasMSE = 'MediaSource' in window,
- hasWebM = document.createElement('video').canPlayType('video/webm; codecs=vp9,vorbis') != "",
- nativeHLS = document.createElement('video').canPlayType('application/vnd.apple.mpegURL') != "";
-
- // Play Multiquality only if supported
- if (hasMSE || nativeHLS) {
- // Detect WebM capability, Select relay, Create player
- var cdnUrl = hasWebM ? '=h($room->getDashManifestUrl())?>' : '=h($room->getHLSPlaylistUrl())?>';
- selectRelay(cdnUrl, function(relayUrl) {
- createPlayer([{source: relayUrl}]);
- });
- } else {
- // Default to simple WebM playback
- var player = createPlayer([{
+ selectRelay("=h($room->getDashManifestUrl())?>", function(relay) {
+ // WebM fallback
+ var sources = [{
source: "=h($stream->getVideoUrl('webm', 'hd'))?>",
- mimeType: "video/webm"
- }]);
- }
+ }];
+
+ // HLS playlist
+ var hasMSE = "MediaSource" in window;
+ if (hasMSE || document.createElement('video').canPlayType('application/vnd.apple.mpegURL') != "") {
+ sources.unshift({
+ source: "=h($room->getHLSPlaylistUrl())?>"
+ });
+ }
+
+ // VP9 dash player
+ if (hasMSE && MediaSource.isTypeSupported('video/webm; codecs="vp9,vorbis"')) {
+ sources.unshift({
+ source: "=h($room->getDashManifestUrl())?>"
+ });
+ }
+
+ createPlayer(sources);
+ });
}());
--
cgit v1.2.3