@castlabs/prestoplay 6.7.0 → 6.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/cjs/cl.adobe.js +3 -3
  3. package/cjs/cl.airplay.js +3 -3
  4. package/cjs/cl.broadpeak.js +6 -6
  5. package/cjs/cl.cast.js +110 -110
  6. package/cjs/cl.conviva.js +33 -33
  7. package/cjs/cl.core.js +419 -420
  8. package/cjs/cl.crypto.js +9 -9
  9. package/cjs/cl.dash.js +71 -71
  10. package/cjs/cl.externs.js +26 -26
  11. package/cjs/cl.freewheel.js +24 -24
  12. package/cjs/cl.hls.js +72 -67
  13. package/cjs/cl.hlssmpte.js +6 -6
  14. package/cjs/cl.htmlcue.js +31 -31
  15. package/cjs/cl.ima.js +23 -23
  16. package/cjs/cl.mse.js +272 -261
  17. package/cjs/cl.muxdata.js +15 -11
  18. package/cjs/cl.onboard.js +3 -3
  19. package/cjs/cl.persistent.js +13 -13
  20. package/cjs/cl.playlist.js +6 -6
  21. package/cjs/cl.smooth.js +71 -71
  22. package/cjs/cl.thumbnails.js +24 -24
  23. package/cjs/cl.tizen.js +71 -71
  24. package/cjs/cl.ttml.js +27 -27
  25. package/cjs/cl.verimatrix.js +5 -5
  26. package/cjs/cl.vimond.js +13 -13
  27. package/cjs/cl.vr.js +19 -19
  28. package/cjs/cl.vtt.js +14 -14
  29. package/cjs/cl.youbora.js +18 -18
  30. package/cl.adobe.js +3 -3
  31. package/cl.airplay.js +3 -3
  32. package/cl.broadpeak.js +5 -5
  33. package/cl.cast.js +87 -87
  34. package/cl.conviva.js +27 -27
  35. package/cl.core.js +358 -363
  36. package/cl.crypto.js +8 -8
  37. package/cl.dash.js +67 -67
  38. package/cl.externs.js +26 -26
  39. package/cl.freewheel.js +19 -19
  40. package/cl.hls.js +61 -57
  41. package/cl.hlssmpte.js +5 -5
  42. package/cl.htmlcue.js +25 -25
  43. package/cl.ima.js +17 -17
  44. package/cl.mse.js +238 -228
  45. package/cl.muxdata.js +12 -9
  46. package/cl.onboard.js +4 -4
  47. package/cl.persistent.js +9 -9
  48. package/cl.playlist.js +5 -5
  49. package/cl.smooth.js +58 -58
  50. package/cl.thumbnails.js +17 -17
  51. package/cl.tizen.js +57 -57
  52. package/cl.ttml.js +22 -22
  53. package/cl.verimatrix.js +4 -4
  54. package/cl.vimond.js +8 -8
  55. package/cl.vr.js +15 -15
  56. package/cl.vtt.js +12 -12
  57. package/cl.youbora.js +15 -15
  58. package/package.json +1 -1
  59. package/typings.d.ts +74 -20
package/CHANGELOG.md CHANGED
@@ -1,3 +1,53 @@
1
+ # 6.9.0
2
+
3
+ ## New Features
4
+
5
+ * Add config option `streaming.ignoreManagedMediaSourceStreamingHints` to ignore
6
+ hints generated by Managed Media Source (MMS) `startstreaming` and
7
+ `endstreaming` events. Default `false` optimizes for both performance and
8
+ resource management, particularly in varied network conditions and on
9
+ constrained devices, where managing power consumption and network efficiency
10
+ is crucial. Use with caution as enabling this option could lead to increased
11
+ power usage, making the default disabled setting a safer choice for general
12
+ use cases.
13
+
14
+ ## Changes
15
+
16
+ * HLS fixes:
17
+ * Fix support for URIs with missing file extensions in discontinuous HLS.
18
+ * Fix sporadic crashes in discontinuous live streams which contain
19
+ thumbnails or subtitles.
20
+ * Fix playback of MP4 streams with large baseMediaDecodeTime values.
21
+ * Additional Meta-Data such as accessibility information are no longer
22
+ fetched by default with the Safari Native Player implementation. This
23
+ behavior can be re-enabled by setting `enableMetadata` to `true` in the
24
+ [Safari Configuration](https://demo.castlabs.com/#/docs?q=clpp#SafariConfiguration).
25
+ * Fixed issue with Safaris native track selection where the player would
26
+ sometimes mark the wrong track as selected.
27
+
28
+ # 6.8.0
29
+
30
+ ## New Features
31
+
32
+ * Add support for Managed Media Source (MMS).
33
+ * Add support for changing initialization sections and encryption in
34
+ discontinuous VOD HLS.
35
+ * Add config options `streaming.disableAudioTracks` and `streaming.disableVideoTracks`
36
+ to disable audio and video of the MSE Player (not applicable to Safari or Tizen
37
+ native playback).
38
+ * Add config option `drm.ignoreUnrecognizedInitData`. If the player encounters init data
39
+ that cannot be processed (e.g., due to a malformed data payload), it will not pass it
40
+ to the CDM to avoid license requests errors. This option allows to disable this behavior
41
+ and pass the init data even if we couldn't parse it.
42
+ * Add IMA SDK support to MSE player on Tizen devices.
43
+ * **Warning!** There are limitations related to analytics reporting for IMA SDK Plugin and SmartTV devices. Refer to the [IMA Plugin](https://demo.castlabs.com/#/docs/advertising#ima-sdk-smarttv-support) documentation for more information.
44
+ * Add Mux Data Plugin support for [Bandwidth Throughput Events](https://docs.mux.com/guides/mux-data-playback-events#bandwidth-throughput-events).
45
+
46
+ ## Changes
47
+
48
+ * Improve handling of segment duration drift in multi-period content.
49
+ * Fix track switching in audio-only content.
50
+
1
51
  # 6.7.0
2
52
 
3
53
  ## Changes
package/cjs/cl.adobe.js CHANGED
@@ -1,7 +1,7 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var PN=function(){this.l=this.f=null;this.a="";this.h=new _.H("clpp.adobe.AdobePlugin")},SN=function(a){a.f=new _.eg;a.f.on(a.l,_.Ne,function(){return QN(a)});a.f.on(a.l,_.Me,function(){s.Media.play(a.a,a.l.getPosition())});a.f.on(a.l,_.xd,function(){return RN(a)});a.f.on(a.l,_.se,function(b){b=b.detail;switch(b.currentState){case _.mn:a.a.length||RN(a);s.Media.play(a.a,a.l.getPosition());break;case _.ln:case _.cn:QN(a);break;case _.en:case _.Ym:case _.jn:a.h.info("Close session for "+a.a+" in player state "+
3
- (b.currentState+".")),QN(a),s.Media.close(a.a),a.a=""}})},RN=function(a){var b=a.l.getLoadedSource();a.a=b?b.name||b.url:"";a.h.info("Open session for "+a.a+" with duration "+a.l.getDuration());s.Media.open(a.a,a.l.getDuration(),_.ra)},QN=function(a){s.Media.stop(a.a,a.l.getPosition())},TN=function(){};_.w(PN,_.nq);PN.prototype.onPlayerCreated=function(a){window.s&&s.Media?(this.l=a,SN(this)):this.h.warn("Adobe API not available.")};
4
- PN.prototype.onPlayerWillDestroy=function(){this.f&&(this.f.release(),this.f=null);this.l=null;this.a=""};PN.prototype.id=function(){return"adobe"};_.C("clpp.adobe.AdobeAnalyticsPlugin",PN);PN.Id="adobe";TN.prototype.create=function(){return new PN};_.Fo(new TN);};
2
+ var f=function(window){var oO=function(){this.l=this.f=null;this.a="";this.h=new _.I("clpp.adobe.AdobePlugin")},rO=function(a){a.f=new _.dg;a.f.on(a.l,_.Le,function(){return pO(a)});a.f.on(a.l,_.Ke,function(){s.Media.play(a.a,a.l.getPosition())});a.f.on(a.l,_.vd,function(){return qO(a)});a.f.on(a.l,_.pe,function(b){b=b.detail;switch(b.currentState){case _.Xm:a.a.length||qO(a);s.Media.play(a.a,a.l.getPosition());break;case _.Wm:case _.Om:pO(a);break;case _.Qm:case _.Em:case _.Um:a.h.info("Close session for "+a.a+" in player state "+
3
+ (b.currentState+".")),pO(a),s.Media.close(a.a),a.a=""}})},qO=function(a){var b=a.l.getLoadedSource();a.a=b?b.name||b.url:"";a.h.info("Open session for "+a.a+" with duration "+a.l.getDuration());s.Media.open(a.a,a.l.getDuration(),_.oa)},pO=function(a){s.Media.stop(a.a,a.l.getPosition())},sO=function(){};_.w(oO,_.$p);oO.prototype.onPlayerCreated=function(a){window.s&&s.Media?(this.l=a,rO(this)):this.h.warn("Adobe API not available.")};
4
+ oO.prototype.onPlayerWillDestroy=function(){this.f&&(this.f.release(),this.f=null);this.l=null;this.a=""};oO.prototype.id=function(){return"adobe"};_.C("clpp.adobe.AdobeAnalyticsPlugin",oO);oO.Id="adobe";sO.prototype.create=function(){return new oO};_.qo(new sO);};
5
5
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
6
6
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
7
7
  else{_=this.clpp._;(f.call(g,this));}
package/cjs/cl.airplay.js CHANGED
@@ -1,7 +1,7 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var NN=function(){var a=this;this.a=this.l=null;this.m=this.f=this.j=!1;this.o=new _.Zi(function(){a.l.play()["catch"](function(){})});this.g=new _.eg},ON=function(){};_.w(NN,_.nq);_.t=NN.prototype;_.t.onPlayerCreated=function(a){this.l=a;this.a=a.getSurface().getMedia()};_.t.onContentWillLoad=function(){this.a&&(this.g.on(this.a,"webkitplaybacktargetavailabilitychanged",this.Xj.bind(this)),this.g.on(this.a,"webkitcurrentplaybacktargetiswirelesschanged",this.xk.bind(this)))};
3
- _.t.onPlayerWillRelease=function(){this.o.stop();this.g.release()};_.t.id=function(){return"airplay"};_.t.Xj=function(a){switch(a.availability){case "available":this.f=!0;break;case "not-available":this.f=!1}this.l.trigger(new _.I(_.bc,{canCast:this.f}))};_.t.xk=function(){var a=(this.j=this.a.webkitCurrentPlaybackTargetIsWireless)?_.ac:_.$b;if(this.m||!this.l.isPaused()||this.l.getState()===_.mn)this.m?this.l.play()["catch"](function(){}):this.o.Z(.01);this.l.trigger(new _.I(a))};_.t.lb=function(){return this.j};
4
- _.t.qe=function(){return this.f};_.t.Wk=function(){this.f&&(this.m=!this.l.isPaused(),this.a.webkitShowPlaybackTargetPicker())};_.C("clpp.airplay.AirPlayPlugin",NN);NN.prototype.showCastMenu=NN.prototype.Wk;NN.prototype.canCast=NN.prototype.qe;NN.prototype.isCasting=NN.prototype.lb;NN.Id="airplay";ON.prototype.create=function(){return new NN};_.Fo(new ON);};
2
+ var f=function(window){var mO=function(){var a=this;this.a=this.l=null;this.m=this.f=this.j=!1;this.o=new _.Ui(function(){a.l.play()["catch"](function(){})});this.g=new _.dg},nO=function(){};_.w(mO,_.$p);_.t=mO.prototype;_.t.onPlayerCreated=function(a){this.l=a;this.a=a.getSurface().getMedia()};_.t.onContentWillLoad=function(){this.a&&(this.g.on(this.a,"webkitplaybacktargetavailabilitychanged",this.hk.bind(this)),this.g.on(this.a,"webkitcurrentplaybacktargetiswirelesschanged",this.Jk.bind(this)))};
3
+ _.t.onPlayerWillRelease=function(){this.o.stop();this.g.release()};_.t.id=function(){return"airplay"};_.t.hk=function(a){switch(a.availability){case "available":this.f=!0;break;case "not-available":this.f=!1}this.l.trigger(new _.J(_.$b,{canCast:this.f}))};_.t.Jk=function(){var a=(this.j=this.a.webkitCurrentPlaybackTargetIsWireless)?_.Yb:_.Xb;if(this.m||!this.l.isPaused()||this.l.getState()===_.Xm)this.m?this.l.play()["catch"](function(){}):this.o.aa(.01);this.l.trigger(new _.J(a))};_.t.mb=function(){return this.j};
4
+ _.t.te=function(){return this.f};_.t.il=function(){this.f&&(this.m=!this.l.isPaused(),this.a.webkitShowPlaybackTargetPicker())};_.C("clpp.airplay.AirPlayPlugin",mO);mO.prototype.showCastMenu=mO.prototype.il;mO.prototype.canCast=mO.prototype.te;mO.prototype.isCasting=mO.prototype.mb;mO.Id="airplay";nO.prototype.create=function(){return new mO};_.qo(new nO);};
5
5
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
6
6
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
7
7
  else{_=this.clpp._;(f.call(g,this));}
@@ -1,10 +1,10 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var FN=function(a,b){this.l=a;this.f=b;this.a=new _.eg;this.g=!1},GN=function(a){function b(c){var d=GenericPlayerApi.call(this)||this;d.l=c;d.a=_.mi();return d}_.w(b,GenericPlayerApi);b.prototype.getPlayerName=function(){return _.ra};b.prototype.getVersion=function(){return _.ea};b.prototype.getOSName=function(){return this.a.os};b.prototype.getDeviceVersion=function(){return this.a.osVersion.name};b.prototype.getDeviceType=function(){return"browser"};b.prototype.getTotalDuration=function(){return this.l.isLive()?
3
- 0:1E3*this.l.getDuration()};b.prototype.getCurrentPosition=function(){return 1E3*this.l.getPosition()};b.prototype.getCurrentBitrate=function(){var c=this.l.getStats();return(c?c.streamBandwidth:0)/1E3};return new b(a)},HN=function(){this.j=this.f=this.a=this.g=this.l=null;this.m=new _.eg},IN=function(a,b){var c=b.analyticsAddress||null,d=b.nanoCDNHost||null,e=b.broadpeakDomainNames||"",f=b.uuid||null;a.g||(a.g=SmartLib.getInstance(),a.g.init(c,d,e),typeof f===_.ve&&a.g.setUUID(f))},JN=function(a,
4
- b){var c=b.customParameters||{};a.a=a.g.createStreamingSession();for(var d in c)a.a.setCustomParameter(d,c[d]);a.m.on(a.l,_.jd,a.S.bind(a));a.j=GN(a.l);a.a.attachPlayer(a.j)},KN=function(a,b){_.hg(a.m);a.f&&(a.f.release(),a.f=null);a.a&&(a.a.stopStreamingSession(b),a.a=null)},LN=function(){return!window.SmartLib||!window.GenericPlayerApi},MN=function(){};_.t=FN.prototype;_.t.init=function(){var a=this.l,b=this.a;b.on(a,_.se,this.xh.bind(this));b.on(a,_.uc,this.vh.bind(this));b.on(a,"seek",this.wh.bind(this))};
5
- _.t.vh=function(a){a=a.detail;typeof a.bandwidth===_.k&&this.f.notifyLayerSwitch(a.bandwidth/1E3)};_.t.xh=function(a){var b=this.l,c=this.f;a=a.detail;var d=a.currentState;a.previousState===_.cn&&c.notifyStallEnd(!b.isPaused());switch(d){case _.cn:c.notifyStallStart();break;case _.mn:this.g?c.notifyResume():(c.notifyFirstImage(),this.g=!0);break;case _.ln:c.notifyPause()}};_.t.wh=function(){var a=1E3*this.l.getPosition();this.f.notifySeek(a)};_.t.release=function(){this.a&&(_.hg(this.a),this.a=null)};_.w(HN,_.nq);_.t=HN.prototype;_.t.onPlayerCreated=function(a){this.l=a};_.t.onContentWillLoad=function(a,b){var c=this,d=a.getConfiguration().broadpeak;if(d){if(LN())return a.onError(new _.L(1,9,11E3));IN(this,d);JN(this,d);return this.a.getURL(b.url).then(function(e){if(e.isError()){var f=e.getDetailedErrorCode();e=e.getDetailedErrorMessage();c.l.onError(new _.L(1,9,11001,{bpkErrorCode:f,message:e}));KN(c,void 0)}else b.url=e.getURL(),c.f=new FN(c.l,c.j),c.f.init()})}};
6
- _.t.S=function(a){a=a.detail;if(7003===a.code)KN(this,SmartLib.BPFormatNotSupportedError);else if(a.severity===_.M)switch(a.category){case 3:KN(this,SmartLib.BPDecodingError);break;case 1:KN(this,SmartLib.BPNetworkingError);break;case 6:KN(this,SmartLib.BPAccessRightError);break;default:KN(this,SmartLib.BPUnspecifiedError)}};_.t.onPlayerWillRelease=function(){LN()||KN(this,SmartLib.BPSessionEndsNormally)};_.t.id=function(){return"broadpeak"};_.C("clpp.broadpeak.BroadpeakPlugin",HN);
7
- HN.isSdkMissing=LN;HN.Id="broadpeak";MN.prototype.create=function(){return new HN};_.Fo(new MN);};
2
+ var f=function(window){var eO=function(a,b){this.l=a;this.f=b;this.a=new _.dg;this.g=!1},fO=function(a){function b(c){var d=GenericPlayerApi.call(this)||this;d.l=c;d.a=_.ki();return d}_.w(b,GenericPlayerApi);b.prototype.getPlayerName=function(){return _.oa};b.prototype.getVersion=function(){return _.ea};b.prototype.getOSName=function(){return this.a.os};b.prototype.getDeviceVersion=function(){return this.a.osVersion.name};b.prototype.getDeviceType=function(){return"browser"};b.prototype.getTotalDuration=function(){return this.l.isLive()?
3
+ 0:1E3*this.l.getDuration()};b.prototype.getCurrentPosition=function(){return 1E3*this.l.getPosition()};b.prototype.getCurrentBitrate=function(){var c=this.l.getStats();return(c?c.streamBandwidth:0)/1E3};return new b(a)},gO=function(){this.j=this.f=this.a=this.g=this.l=null;this.m=new _.dg},hO=function(a,b){var c=b.analyticsAddress||null,d=b.nanoCDNHost||null,e=b.broadpeakDomainNames||"",f=b.uuid||null;a.g||(a.g=SmartLib.getInstance(),a.g.init(c,d,e),typeof f===_.te&&a.g.setUUID(f))},iO=function(a,
4
+ b){var c=b.customParameters||{};a.a=a.g.createStreamingSession();for(var d in c)a.a.setCustomParameter(d,c[d]);a.m.on(a.l,_.hd,a.U.bind(a));a.j=fO(a.l);a.a.attachPlayer(a.j)},jO=function(a,b){_.gg(a.m);a.f&&(a.f.release(),a.f=null);a.a&&(a.a.stopStreamingSession(b),a.a=null)},kO=function(){return!window.SmartLib||!window.GenericPlayerApi},lO=function(){};_.t=eO.prototype;_.t.init=function(){var a=this.l,b=this.a;b.on(a,_.pe,this.Eh.bind(this));b.on(a,_.rc,this.Ch.bind(this));b.on(a,"seek",this.Dh.bind(this))};
5
+ _.t.Ch=function(a){a=a.detail;typeof a.bandwidth===_.k&&this.f.notifyLayerSwitch(a.bandwidth/1E3)};_.t.Eh=function(a){var b=this.l,c=this.f;a=a.detail;var d=a.currentState;a.previousState===_.Om&&c.notifyStallEnd(!b.isPaused());switch(d){case _.Om:c.notifyStallStart();break;case _.Xm:this.g?c.notifyResume():(c.notifyFirstImage(),this.g=!0);break;case _.Wm:c.notifyPause()}};_.t.Dh=function(){var a=1E3*this.l.getPosition();this.f.notifySeek(a)};_.t.release=function(){this.a&&(_.gg(this.a),this.a=null)};_.w(gO,_.$p);_.t=gO.prototype;_.t.onPlayerCreated=function(a){this.l=a};_.t.onContentWillLoad=function(a,b){var c=this,d=a.getConfiguration().broadpeak;if(d){if(kO())return a.onError(new _.L(1,9,11E3));hO(this,d);iO(this,d);return this.a.getURL(b.url).then(function(e){if(e.isError()){var f=e.getDetailedErrorCode();e=e.getDetailedErrorMessage();c.l.onError(new _.L(1,9,11001,{bpkErrorCode:f,message:e}));jO(c,void 0)}else b.url=e.getURL(),c.f=new eO(c.l,c.j),c.f.init()})}};
6
+ _.t.U=function(a){a=a.detail;if(7003===a.code)jO(this,SmartLib.BPFormatNotSupportedError);else if(a.severity===_.M)switch(a.category){case 3:jO(this,SmartLib.BPDecodingError);break;case 1:jO(this,SmartLib.BPNetworkingError);break;case 6:jO(this,SmartLib.BPAccessRightError);break;default:jO(this,SmartLib.BPUnspecifiedError)}};_.t.onPlayerWillRelease=function(){kO()||jO(this,SmartLib.BPSessionEndsNormally)};_.t.id=function(){return"broadpeak"};_.C("clpp.broadpeak.BroadpeakPlugin",gO);
7
+ gO.isSdkMissing=kO;gO.Id="broadpeak";lO.prototype.create=function(){return new gO};_.qo(new lO);};
8
8
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
9
9
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
10
10
  else{_=this.clpp._;(f.call(g,this));}