eyevinn-channel-engine 4.0.2 → 4.0.3

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.
@@ -920,7 +920,7 @@ var Session = /** @class */ (function () {
920
920
  case 2:
921
921
  playheadState = _a.sent();
922
922
  if (!(playheadState.vodMediaSeqAudio > sessionState.vodMediaSeqAudio ||
923
- (playheadState.vodMediaSeqAudio < sessionState.vodMediaSeqAudio && playheadState.mediaSeqAudio === this.prevMediaSeqOffset.audio))) return [3 /*break*/, 8];
923
+ (playheadState.vodMediaSeqAudio < sessionState.vodMediaSeqAudio && playheadState.mediaSeqAudio === this.prevMediaSeqOffset.audio))) return [3 /*break*/, 9];
924
924
  return [4 /*yield*/, this._sessionState.get("state")];
925
925
  case 3:
926
926
  state = _a.sent();
@@ -932,14 +932,17 @@ var Session = /** @class */ (function () {
932
932
  return [4 /*yield*/, this._playheadState.getValues(["mediaSeqAudio", "vodMediaSeqAudio"])];
933
933
  case 5:
934
934
  playheadState = _a.sent();
935
- return [3 /*break*/, 8];
935
+ return [3 /*break*/, 9];
936
936
  case 6:
937
937
  debug("[".concat(this._sessionId, "]: Recently Loaded Next Vod. PlayheadState not up-to-date. Delay audio-m3u8 Response by 1000ms"));
938
938
  return [4 /*yield*/, timer(1000)];
939
939
  case 7:
940
940
  _a.sent();
941
- _a.label = 8;
941
+ return [4 /*yield*/, this._playheadState.getValues(["mediaSeqAudio", "vodMediaSeqAudio"])];
942
942
  case 8:
943
+ playheadState = _a.sent();
944
+ _a.label = 9;
945
+ case 9:
943
946
  // local store the prev values
944
947
  if (this.prevVodMediaSeq.audio === null) {
945
948
  this.prevVodMediaSeq.audio = playheadState.vodMediaSeqAudio;
@@ -948,29 +951,29 @@ var Session = /** @class */ (function () {
948
951
  this.prevMediaSeqOffset.audio = playheadState.mediaSeqAudio;
949
952
  }
950
953
  return [4 /*yield*/, this._sessionState.getCurrentVod()];
951
- case 9:
954
+ case 10:
952
955
  currentVod = _a.sent();
953
- if (!currentVod) return [3 /*break*/, 17];
954
- if (!(playheadState.vodMediaSeqAudio < 2 || playheadState.mediaSeqAudio !== this.prevMediaSeqOffset.audio)) return [3 /*break*/, 13];
956
+ if (!currentVod) return [3 /*break*/, 18];
957
+ if (!(playheadState.vodMediaSeqAudio < 2 || playheadState.mediaSeqAudio !== this.prevMediaSeqOffset.audio)) return [3 /*break*/, 14];
955
958
  AGE_THRESH = 20 * 1000;
956
959
  cacheAge = null;
957
960
  if (this._sessionState.cache && this._sessionState.cache.currentVod.ts) {
958
961
  cacheAge = Date.now() - this._sessionState.cache.currentVod.ts;
959
962
  }
960
- if (!(cacheAge !== null && cacheAge > AGE_THRESH)) return [3 /*break*/, 13];
963
+ if (!(cacheAge !== null && cacheAge > AGE_THRESH)) return [3 /*break*/, 14];
961
964
  return [4 /*yield*/, timer(500)];
962
- case 10:
965
+ case 11:
963
966
  _a.sent();
964
967
  debug("[".concat(this._sessionId, "]: While requesting audio manifest for ").concat(audioGroupId, "-").concat(audioLanguage, ", (mseq=").concat(playheadState.vodMediaSeqAudio, ")(vod cache age=").concat(cacheAge, ")"));
965
968
  return [4 /*yield*/, this._sessionState.clearCurrentVodCache()];
966
- case 11:
969
+ case 12:
967
970
  _a.sent(); // force reading up from shared store
968
971
  return [4 /*yield*/, this._sessionState.getCurrentVod()];
969
- case 12:
970
- currentVod = _a.sent();
971
- _a.label = 13;
972
972
  case 13:
973
- _a.trys.push([13, 14, , 16]);
973
+ currentVod = _a.sent();
974
+ _a.label = 14;
975
+ case 14:
976
+ _a.trys.push([14, 15, , 17]);
974
977
  manifestMseq = playheadState.mediaSeqAudio + playheadState.vodMediaSeqAudio;
975
978
  manifestDseq = sessionState.discSeqAudio + currentVod.discontinuitiesAudio[playheadState.vodMediaSeqAudio];
976
979
  if (currentVod.sequenceAlwaysContainNewSegments) {
@@ -988,16 +991,16 @@ var Session = /** @class */ (function () {
988
991
  this.prevVodMediaSeq.audio = playheadState.vodMediaSeqAudio;
989
992
  this.prevMediaSeqOffset.audio = playheadState.mediaSeqAudio;
990
993
  return [2 /*return*/, m3u8_2];
991
- case 14:
994
+ case 15:
992
995
  err_5 = _a.sent();
993
996
  logerror(this._sessionId, err_5);
994
997
  return [4 /*yield*/, this._sessionState.clearCurrentVodCache()];
995
- case 15:
998
+ case 16:
996
999
  _a.sent(); // force reading up from shared store
997
1000
  throw new Error("Failed to generate audio manifest: " + JSON.stringify(playheadState));
998
- case 16: return [3 /*break*/, 18];
999
- case 17: throw new Error("Engine not ready");
1000
- case 18: return [2 /*return*/];
1001
+ case 17: return [3 /*break*/, 19];
1002
+ case 18: throw new Error("Engine not ready");
1003
+ case 19: return [2 /*return*/];
1001
1004
  }
1002
1005
  });
1003
1006
  });
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eyevinn-channel-engine",
3
- "version": "4.0.2",
3
+ "version": "4.0.3",
4
4
  "description": "OTT TV Channel Engine",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/engine/session.js CHANGED
@@ -650,7 +650,7 @@ class Session {
650
650
  }
651
651
  let currentVod = null;
652
652
  const sessionState = await this._sessionState.getValues(["discSeqAudio", "vodMediaSeqAudio"]);
653
- const playheadState = await this._playheadState.getValues(["mediaSeqAudio", "vodMediaSeqAudio"]);
653
+ let playheadState = await this._playheadState.getValues(["mediaSeqAudio", "vodMediaSeqAudio"]);
654
654
 
655
655
  if (
656
656
  playheadState.vodMediaSeqAudio > sessionState.vodMediaSeqAudio ||
@@ -666,6 +666,7 @@ class Session {
666
666
  } else {
667
667
  debug(`[${this._sessionId}]: Recently Loaded Next Vod. PlayheadState not up-to-date. Delay audio-m3u8 Response by 1000ms`);
668
668
  await timer(1000);
669
+ playheadState = await this._playheadState.getValues(["mediaSeqAudio", "vodMediaSeqAudio"]);
669
670
  }
670
671
  }
671
672
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eyevinn-channel-engine",
3
- "version": "4.0.2",
3
+ "version": "4.0.3",
4
4
  "description": "OTT TV Channel Engine",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",