@castlabs/prestoplay 6.23.1 → 6.25.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 (65) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/cjs/cl.adobe.js +3 -3
  3. package/cjs/cl.airplay.js +3 -3
  4. package/cjs/cl.broadpeak.js +7 -7
  5. package/cjs/cl.cast.js +116 -116
  6. package/cjs/cl.conviva.js +32 -32
  7. package/cjs/cl.core.js +607 -591
  8. package/cjs/cl.crypto.js +9 -9
  9. package/cjs/cl.dash.js +88 -86
  10. package/cjs/cl.externs.js +105 -54
  11. package/cjs/cl.freewheel.js +25 -24
  12. package/cjs/cl.hls.js +77 -71
  13. package/cjs/cl.hlssmpte.js +6 -6
  14. package/cjs/cl.htmlcue.js +30 -30
  15. package/cjs/cl.ima.js +24 -23
  16. package/cjs/cl.mse.js +352 -342
  17. package/cjs/cl.muxdata.js +15 -15
  18. package/cjs/cl.onboard.js +3 -3
  19. package/cjs/cl.persistent.js +15 -14
  20. package/cjs/cl.playlist.js +6 -6
  21. package/cjs/cl.sessions.js +16 -16
  22. package/cjs/cl.simid.js +15 -15
  23. package/cjs/cl.smooth.js +72 -72
  24. package/cjs/cl.thumbnails.js +26 -26
  25. package/cjs/cl.tizen.js +72 -72
  26. package/cjs/cl.ttml.js +29 -29
  27. package/cjs/cl.verimatrix.js +5 -5
  28. package/cjs/cl.vimond.js +12 -12
  29. package/cjs/cl.vr.js +19 -19
  30. package/cjs/cl.vtt.js +14 -14
  31. package/cjs/cl.yospace.js +4 -4
  32. package/cjs/cl.youbora.js +37 -37
  33. package/cl.adobe.js +3 -3
  34. package/cl.airplay.js +3 -3
  35. package/cl.broadpeak.js +5 -5
  36. package/cl.cast.js +88 -88
  37. package/cl.conviva.js +27 -27
  38. package/cl.core.js +491 -478
  39. package/cl.crypto.js +9 -9
  40. package/cl.dash.js +82 -80
  41. package/cl.externs.js +105 -54
  42. package/cl.freewheel.js +19 -19
  43. package/cl.hls.js +79 -74
  44. package/cl.hlssmpte.js +5 -5
  45. package/cl.htmlcue.js +26 -26
  46. package/cl.ima.js +18 -17
  47. package/cl.mse.js +310 -306
  48. package/cl.muxdata.js +13 -13
  49. package/cl.onboard.js +4 -4
  50. package/cl.persistent.js +10 -10
  51. package/cl.playlist.js +5 -5
  52. package/cl.sessions.js +10 -10
  53. package/cl.simid.js +13 -13
  54. package/cl.smooth.js +60 -59
  55. package/cl.thumbnails.js +19 -19
  56. package/cl.tizen.js +57 -57
  57. package/cl.ttml.js +22 -22
  58. package/cl.verimatrix.js +4 -4
  59. package/cl.vimond.js +8 -8
  60. package/cl.vr.js +14 -14
  61. package/cl.vtt.js +12 -12
  62. package/cl.yospace.js +3 -3
  63. package/cl.youbora.js +28 -28
  64. package/package.json +1 -1
  65. package/typings.d.ts +54 -25
package/CHANGELOG.md CHANGED
@@ -1,3 +1,38 @@
1
+ # 6.25.0
2
+
3
+ ## New Features
4
+
5
+ * Add config option `streaming.gapTolerance`.
6
+ * Add support for IMA SDK Plugin on webOS devices.
7
+ * Refer to the [IMA Plugin](https://demo.castlabs.com/#/docs/advertising#ima-sdk-smarttv-support) documentation for more information.
8
+
9
+ ## Changes
10
+
11
+ * Fix an issue with playing media playlists directly with media segment file
12
+ extension `.m4f` in HLS.
13
+ * Fix issues with preroll sometimes not playing with IMA SDK Plugin on Tizen and WebOS devices.
14
+ * Fix issues with the IMA SDK plugin on Tizen where the main content fails to resume at the correct position after a mid-roll ad.
15
+ * Fix support for METHOD AES-128 encryption in HLS.
16
+ * Fix an issue with AirPlay on iOS when switching between DASH and HLS playback.
17
+ * Fix `streaming.disableAudioTracks` config option for multi-period streams.
18
+ * Support EXT-X-DEFINE tags anywhere in the playlist in HLS.
19
+ * Fix an issues with upper case values of `Content-Type` HTTP header in media
20
+ segment responses in HLS.
21
+
22
+ # 6.24.0
23
+
24
+ ## New Features
25
+
26
+ * Improve support for HLS interstitials.
27
+ * Add support for HLS streams containing both separate and muxed audio tracks.
28
+
29
+ ## Changes
30
+
31
+ * Disable console logs by default. To enable logs call `clpp.log.setLogLevel(clpp.log.Level.INFO);`
32
+ or refer to [debugging docs](https://demo.castlabs.com/#/docs/getting_started#debugging)
33
+ * Fix a issue with fMP4 HLS where init segments are re-fetched unnecessarily.
34
+ * Fix support for `EXT-X-MEDIA` `DEFAULT` attribute in HLS.
35
+
1
36
  # 6.23.1
2
37
 
3
38
  ## Changes
package/cjs/cl.adobe.js CHANGED
@@ -1,7 +1,7 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var pY=function(){this.m=this.f=null;this.a="";this.g=new _.K("clpp.adobe.AdobePlugin")},sY=function(a){a.f=new _.Yh;a.f.on(a.m,_.Dg,function(){return qY(a)});a.f.on(a.m,_.Cg,function(){s.Media.play(a.a,a.m.getPosition())});a.f.on(a.m,_.Me,function(){return rY(a)});a.f.on(a.m,_.ig,function(b){b=b.detail;switch(b.currentState){case _.Iq:a.a.length||rY(a);s.Media.play(a.a,a.m.getPosition());break;case _.Hq:case _.zq:qY(a);break;case _.Bq:case _.uq:case _.Fq:a.g.info("Close session for "+a.a+" in player state "+
3
- (b.currentState+".")),qY(a),s.Media.close(a.a),a.a=""}})},rY=function(a){var b=a.m.getLoadedSource();a.a=b?b.name||b.url:"";a.g.info("Open session for "+a.a+" with duration "+a.m.getDuration());s.Media.open(a.a,a.m.getDuration(),_.va)},qY=function(a){s.Media.stop(a.a,a.m.getPosition())},tY=function(){};_.x(pY,_.Lv);pY.prototype.onPlayerCreated=function(a){var b=a.getConfiguration().adobe;b&&!1===b.enabled?this.g.debug("Adobe plugin is disabled."):window.s&&s.Media?(this.m=a,sY(this)):this.g.warn("Adobe API not available.")};
4
- pY.prototype.onPlayerWillDestroy=function(){this.f&&(this.f.release(),this.f=null);this.m=null;this.a=""};pY.prototype.id=function(){return"adobe"};_.J("clpp.adobe.AdobeAnalyticsPlugin",pY);pY.Id="adobe";tY.prototype.create=function(){return new pY};_.Ht(new tY);};
2
+ var f=function(window){var nZ=function(){this.m=this.f=null;this.a="";this.g=new _.K("clpp.adobe.AdobePlugin")},qZ=function(a){a.f=new _.wi;a.f.on(a.m,_.Ug,function(){return oZ(a)});a.f.on(a.m,_.Tg,function(){s.Media.play(a.a,a.m.getPosition())});a.f.on(a.m,_.Ue,function(){return pZ(a)});a.f.on(a.m,_.rg,function(b){b=b.detail;switch(b.currentState){case _.Vq:a.a.length||pZ(a);s.Media.play(a.a,a.m.getPosition());break;case _.Uq:case _.Mq:oZ(a);break;case _.Oq:case _.Hq:case _.Sq:a.g.info("Close session for "+a.a+" in player state "+
3
+ (b.currentState+".")),oZ(a),s.Media.close(a.a),a.a=""}})},pZ=function(a){var b=a.m.getLoadedSource();a.a=b?b.name||b.url:"";a.g.info("Open session for "+a.a+" with duration "+a.m.getDuration());s.Media.open(a.a,a.m.getDuration(),_.xa)},oZ=function(a){s.Media.stop(a.a,a.m.getPosition())},rZ=function(){};_.x(nZ,_.gw);nZ.prototype.onPlayerCreated=function(a){var b=a.getConfiguration().adobe;b&&!1===b.enabled?this.g.debug("Adobe plugin is disabled."):window.s&&s.Media?(this.m=a,qZ(this)):this.g.warn("Adobe API not available.")};
4
+ nZ.prototype.onPlayerWillDestroy=function(){this.f&&(this.f.release(),this.f=null);this.m=null;this.a=""};nZ.prototype.id=function(){return"adobe"};_.J("clpp.adobe.AdobeAnalyticsPlugin",nZ);nZ.Id="adobe";rZ.prototype.create=function(){return new nZ};_.cu(new rZ);};
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 nY=function(){var a=this;this.a=this.m=null;this.l=this.f=this.j=!1;this.o=new _.wl(function(){a.m.play()["catch"](function(){})});this.h=new _.Yh},oY=function(){};_.x(nY,_.Lv);_.t=nY.prototype;_.t.onPlayerCreated=function(a){this.m=a;this.a=a.getSurface().getMedia()};_.t.onContentWillLoad=function(){this.a&&(this.h.on(this.a,"webkitplaybacktargetavailabilitychanged",this.Qm.bind(this)),this.h.on(this.a,"webkitcurrentplaybacktargetiswirelesschanged",this.un.bind(this)))};
3
- _.t.onPlayerWillRelease=function(){this.o.stop();this.h.release()};_.t.id=function(){return"airplay"};_.t.Qm=function(a){switch(a.availability){case "available":this.f=!0;break;case "not-available":this.f=!1}this.m.trigger(new _.L(_.Pc,{canCast:this.f}))};_.t.un=function(){var a=(this.j=this.a.webkitCurrentPlaybackTargetIsWireless)?_.Oc:_.Nc;if(this.l||!this.m.isPaused()||this.m.getState()===_.Iq)this.l?this.m.play()["catch"](function(){}):this.o.ea(.01);this.m.trigger(new _.L(a))};_.t.Ob=function(){return this.j};
4
- _.t.Rf=function(){return this.f};_.t.io=function(){this.f&&(this.l=!this.m.isPaused(),this.a.webkitShowPlaybackTargetPicker())};_.J("clpp.airplay.AirPlayPlugin",nY);nY.prototype.showCastMenu=nY.prototype.io;nY.prototype.canCast=nY.prototype.Rf;nY.prototype.isCasting=nY.prototype.Ob;nY.Id="airplay";oY.prototype.create=function(){return new nY};_.Ht(new oY);};
2
+ var f=function(window){var lZ=function(){var a=this;this.a=this.m=null;this.l=this.f=this.j=!1;this.o=new _.ji(function(){a.m.play()["catch"](function(){})});this.h=new _.wi},mZ=function(){};_.x(lZ,_.gw);_.u=lZ.prototype;_.u.onPlayerCreated=function(a){this.m=a;this.a=a.getSurface().getMedia()};_.u.onContentWillLoad=function(){this.a&&(this.h.on(this.a,"webkitplaybacktargetavailabilitychanged",this.fn.bind(this)),this.h.on(this.a,"webkitcurrentplaybacktargetiswirelesschanged",this.Kn.bind(this)))};
3
+ _.u.onPlayerWillRelease=function(){this.o.stop();this.h.release()};_.u.id=function(){return"airplay"};_.u.fn=function(a){switch(a.availability){case "available":this.f=!0;break;case "not-available":this.f=!1}this.m.trigger(new _.L(_.Uc,{canCast:this.f}))};_.u.Kn=function(){var a=(this.j=this.a.webkitCurrentPlaybackTargetIsWireless)?_.Tc:_.Sc;if(this.l||!this.m.isPaused()||this.m.getState()===_.Vq)this.l?this.m.play()["catch"](function(){}):this.o.fa(.01);this.m.trigger(new _.L(a))};_.u.Ub=function(){return this.j};
4
+ _.u.Xf=function(){return this.f};_.u.Ao=function(){this.f&&(this.l=!this.m.isPaused(),this.a.webkitShowPlaybackTargetPicker())};_.J("clpp.airplay.AirPlayPlugin",lZ);lZ.prototype.showCastMenu=lZ.prototype.Ao;lZ.prototype.canCast=lZ.prototype.Xf;lZ.prototype.isCasting=lZ.prototype.Ub;lZ.Id="airplay";mZ.prototype.create=function(){return new lZ};_.cu(new mZ);};
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,11 +1,11 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var fY=function(a,b){this.m=a;this.f=b;this.a=new _.Yh;this.h=!1},gY=function(a){function b(c){var d=GenericPlayerApi.call(this)||this;d.m=c;d.a=_.yk();return d}_.x(b,GenericPlayerApi);b.prototype.getPlayerName=function(){return _.va};b.prototype.getVersion=function(){return _.ia};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.m.isLive()?
3
- 0:1E3*this.m.getDuration()};b.prototype.getCurrentPosition=function(){return 1E3*this.m.getPosition()};b.prototype.getCurrentBitrate=function(){var c=this.m.getStats();return(c?c.streamBandwidth:0)/1E3};return new b(a)},hY=function(){this.l=this.f=this.a=this.h=this.m=null;this.o=new _.Yh;this.j=!1},iY=function(a,b){var c=b.analyticsAddress||null,d=b.nanoCDNHost||null,e=b.broadpeakDomainNames||"",f=b.uuid||null;a.h||(a.h=SmartLib.getInstance(),a.h.init(c,d,e),typeof f===_.lg&&a.h.setUUID(f))},jY=
4
- function(a,b){var c=b.customParameters||{};a.a=a.h.createStreamingSession();a.a.setOption(StreamingSessionOptions.SESSION_PRECACHE,!0);for(var d in c)a.a.setCustomParameter(d,c[d]);a.o.on(a.m,_.se,a.Xj.bind(a));a.l=gY(a.m);a.a.attachPlayer(a.l)},kY=function(a,b){_.ai(a.o);a.f&&(a.f.release(),a.f=null);a.a&&(a.a.stopStreamingSession(b),a.a=null)},lY=function(){return!window.SmartLib||!window.GenericPlayerApi},mY=function(){};_.t=fY.prototype;
5
- _.t.init=function(){var a=this.m,b=this.a;b.on(a,_.ig,this.$j.bind(this));b.on(a,_.gd,this.Yj.bind(this));b.on(a,"seek",this.Zj.bind(this))};_.t.Yj=function(a){a=a.detail;typeof a.bandwidth===_.k&&this.f.notifyLayerSwitch(a.bandwidth/1E3)};_.t.$j=function(a){var b=this.m,c=this.f;a=a.detail;var d=a.currentState;a.previousState===_.zq&&c.notifyStallEnd(!b.isPaused());switch(d){case _.zq:c.notifyStallStart();break;case _.Iq:this.h?c.notifyResume():(c.notifyFirstImage(),this.h=!0);break;case _.Hq:c.notifyPause()}};
6
- _.t.Zj=function(){var a=1E3*this.m.getPosition();this.f.notifySeek(a)};_.t.release=function(){this.a&&(_.ai(this.a),this.a=null)};_.x(hY,_.Lv);_.t=hY.prototype;_.t.onPlayerCreated=function(a){this.m=a};_.t.onContentWillLoad=function(a,b){var c=this,d=a.getConfiguration().broadpeak;if(d){if(lY())return a.onError(new _.P(1,9,11E3));this.j=!0;iY(this,d);jY(this,d);return this.a.getURL(b.url).then(function(e){if(e.isError()){var f=e.getDetailedErrorCode();e=e.getDetailedErrorMessage();c.m.onError(new _.P(1,9,11001,{bpkErrorCode:f,message:e}));kY(c,void 0)}else b.url=e.getURL(),c.f=new fY(c.m,c.l),c.f.init()})}};
7
- _.t.onContentLoaded=function(){!1!==this.j&&this.a.precacheEnded()};_.t.Xj=function(a){a=a.detail;if(7003===a.code)kY(this,SmartLib.BPFormatNotSupportedError);else if(a.severity===_.Q)switch(a.category){case 3:kY(this,SmartLib.BPDecodingError);break;case 1:kY(this,SmartLib.BPNetworkingError);break;case 6:kY(this,SmartLib.BPAccessRightError);break;default:kY(this,SmartLib.BPUnspecifiedError)}};_.t.onPlayerWillRelease=function(){lY()||kY(this,SmartLib.BPSessionEndsNormally);this.j=!1};_.t.id=function(){return"broadpeak"};
8
- _.J("clpp.broadpeak.BroadpeakPlugin",hY);hY.isSdkMissing=lY;hY.Id="broadpeak";mY.prototype.create=function(){return new hY};_.Ht(new mY);};
2
+ var f=function(window){var dZ=function(a,b){this.m=a;this.f=b;this.a=new _.wi;this.h=!1},eZ=function(a){function b(c){var d=GenericPlayerApi.call(this)||this;d.m=c;d.a=_.Hk();return d}_.x(b,GenericPlayerApi);b.prototype.getPlayerName=function(){return _.xa};b.prototype.getVersion=function(){return _.ia};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.m.isLive()?
3
+ 0:1E3*this.m.getDuration()};b.prototype.getCurrentPosition=function(){return 1E3*this.m.getPosition()};b.prototype.getCurrentBitrate=function(){var c=this.m.getStats();return(c?c.streamBandwidth:0)/1E3};return new b(a)},fZ=function(){this.l=this.f=this.a=this.h=this.m=null;this.o=new _.wi;this.j=!1},gZ=function(a,b){var c=b.analyticsAddress||null,d=b.nanoCDNHost||null,e=b.broadpeakDomainNames||"",f=b.uuid||null;a.h||(a.h=SmartLib.getInstance(),a.h.init(c,d,e),typeof f===_.ug&&a.h.setUUID(f))},hZ=
4
+ function(a,b){var c=b.customParameters||{};a.a=a.h.createStreamingSession();a.a.setOption(StreamingSessionOptions.SESSION_PRECACHE,!0);for(var d in c)a.a.setCustomParameter(d,c[d]);a.o.on(a.m,_.Ae,a.fk.bind(a));a.l=eZ(a.m);a.a.attachPlayer(a.l)},iZ=function(a,b){_.zi(a.o);a.f&&(a.f.release(),a.f=null);a.a&&(a.a.stopStreamingSession(b),a.a=null)},jZ=function(){return!window.SmartLib||!window.GenericPlayerApi},kZ=function(){};_.u=dZ.prototype;
5
+ _.u.init=function(){var a=this.m,b=this.a;b.on(a,_.rg,this.ik.bind(this));b.on(a,_.md,this.gk.bind(this));b.on(a,"seek",this.hk.bind(this))};_.u.gk=function(a){a=a.detail;typeof a.bandwidth===_.k&&this.f.notifyLayerSwitch(a.bandwidth/1E3)};_.u.ik=function(a){var b=this.m,c=this.f;a=a.detail;var d=a.currentState;a.previousState===_.Mq&&c.notifyStallEnd(!b.isPaused());switch(d){case _.Mq:c.notifyStallStart();break;case _.Vq:this.h?c.notifyResume():(c.notifyFirstImage(),this.h=!0);break;case _.Uq:c.notifyPause()}};
6
+ _.u.hk=function(){var a=1E3*this.m.getPosition();this.f.notifySeek(a)};_.u.release=function(){this.a&&(_.zi(this.a),this.a=null)};_.x(fZ,_.gw);_.u=fZ.prototype;_.u.onPlayerCreated=function(a){this.m=a};_.u.onContentWillLoad=function(a,b){var c=this,d=a.getConfiguration().broadpeak;if(d){if(jZ())return a.onError(new _.O(1,9,11E3));this.j=!0;gZ(this,d);hZ(this,d);return this.a.getURL(b.url).then(function(e){if(e.isError()){var f=e.getDetailedErrorCode();e=e.getDetailedErrorMessage();c.m.onError(new _.O(1,9,11001,{bpkErrorCode:f,message:e}));iZ(c,void 0)}else b.url=e.getURL(),c.f=new dZ(c.m,c.l),c.f.init()})}};
7
+ _.u.onContentLoaded=function(){!1!==this.j&&this.a.precacheEnded()};_.u.fk=function(a){a=a.detail;if(7003===a.code)iZ(this,SmartLib.BPFormatNotSupportedError);else if(a.severity===_.P)switch(a.category){case 3:iZ(this,SmartLib.BPDecodingError);break;case 1:iZ(this,SmartLib.BPNetworkingError);break;case 6:iZ(this,SmartLib.BPAccessRightError);break;default:iZ(this,SmartLib.BPUnspecifiedError)}};_.u.onPlayerWillRelease=function(){jZ()||iZ(this,SmartLib.BPSessionEndsNormally);this.j=!1};_.u.id=function(){return"broadpeak"};
8
+ _.J("clpp.broadpeak.BroadpeakPlugin",fZ);fZ.isSdkMissing=jZ;fZ.Id="broadpeak";kZ.prototype.create=function(){return new fZ};_.cu(new kZ);};
9
9
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
10
10
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
11
11
  else{_=this.clpp._;(f.call(g,this));}