stormcloud-video-player 0.8.0 → 0.8.2

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.
@@ -1219,7 +1219,7 @@ function createHlsAdPlayer(contentVideo, options) {
1219
1219
  };
1220
1220
  }
1221
1221
  // src/sdk/pal.ts
1222
- var PAL_SDK_URL = "https://imasdk.googleapis.com/pal/sdkloader/newpallibrary.js";
1222
+ var PAL_SDK_URL = "https://imasdk.googleapis.com/pal/sdkloader/pal.js";
1223
1223
  var _nonceLoader;
1224
1224
  var _palLoadPromise;
1225
1225
  function loadPalSdk() {
@@ -2597,19 +2597,28 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
2597
2597
  });
2598
2598
  this.hls.on(import_hls2.default.Events.MANIFEST_PARSED, function(_, data) {
2599
2599
  return _async_to_generator(function() {
2600
- var _this_config_minSegmentsBeforePlay, _ref, _this_hls_levels, _this_hls, adBehavior, minSegments, _this_video_play;
2600
+ var _ref, _this_config_minSegmentsBeforePlay, _this_hls_levels, _this_hls, prerollKey, adBehavior, minSegments, _this_video_play;
2601
2601
  return _ts_generator(this, function(_state) {
2602
2602
  switch(_state.label){
2603
2603
  case 0:
2604
- if (this.config.allowNativeHls === false) {
2605
- this.isLiveStream = true;
2606
- } else {
2607
- ;
2608
- ;
2609
- this.isLiveStream = (_ref = (_this_hls = this.hls) === null || _this_hls === void 0 ? void 0 : (_this_hls_levels = _this_hls.levels) === null || _this_hls_levels === void 0 ? void 0 : _this_hls_levels.some(function(level) {
2610
- var _level_details, _level_details1;
2611
- return (level === null || level === void 0 ? void 0 : (_level_details = level.details) === null || _level_details === void 0 ? void 0 : _level_details.live) === true || (level === null || level === void 0 ? void 0 : (_level_details1 = level.details) === null || _level_details1 === void 0 ? void 0 : _level_details1.type) === "LIVE";
2612
- })) !== null && _ref !== void 0 ? _ref : false;
2604
+ this.isLiveStream = (_ref = (_this_hls = this.hls) === null || _this_hls === void 0 ? void 0 : (_this_hls_levels = _this_hls.levels) === null || _this_hls_levels === void 0 ? void 0 : _this_hls_levels.some(function(level) {
2605
+ var _level_details, _level_details1;
2606
+ return (level === null || level === void 0 ? void 0 : (_level_details = level.details) === null || _level_details === void 0 ? void 0 : _level_details.live) === true || (level === null || level === void 0 ? void 0 : (_level_details1 = level.details) === null || _level_details1 === void 0 ? void 0 : _level_details1.type) === "LIVE";
2607
+ })) !== null && _ref !== void 0 ? _ref : false;
2608
+ if (!this.isLiveStream && this.vmapBreaks.length === 0 && this.apiVastTagUrl) {
2609
+ prerollKey = "synthetic-vod-preroll";
2610
+ if (!this.consumedVmapBreakIds.has(prerollKey)) {
2611
+ this.vmapBreaks = [
2612
+ {
2613
+ id: prerollKey,
2614
+ startTimeMs: 0,
2615
+ vastTagUrl: this.apiVastTagUrl
2616
+ }
2617
+ ];
2618
+ if (this.config.debugAdTiming) {
2619
+ console.log("[StormcloudVideoPlayer] Injected synthetic VOD preroll from apiVastTagUrl");
2620
+ }
2621
+ }
2613
2622
  }
2614
2623
  if (this.config.debugAdTiming) {
2615
2624
  adBehavior = this.shouldContinueLiveStreamDuringAds() ? "live (main video continues muted during ads)" : "vod (main video pauses during ads)";
@@ -7065,7 +7074,8 @@ var StormcloudVideoPlayer = /*#__PURE__*/ function() {
7065
7074
  continue;
7066
7075
  }
7067
7076
  var end = breakStartMs + (b.durationMs || 0);
7068
- if (nowMs >= breakStartMs && (b.durationMs ? nowMs < end : nowMs <= breakStartMs + tol)) {
7077
+ var effectiveTol = breakStartMs === 0 ? Math.max(tol, 3e4) : tol;
7078
+ if (nowMs >= breakStartMs && (b.durationMs ? nowMs < end : nowMs <= breakStartMs + effectiveTol)) {
7069
7079
  return b;
7070
7080
  }
7071
7081
  }