senza-sdk 4.2.49 → 4.2.50

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "senza-sdk",
3
- "version": "4.2.49",
3
+ "version": "4.2.50",
4
4
  "main": "./src/api.js",
5
5
  "description": "API for Senza application",
6
6
  "license": "MIT",
@@ -586,7 +586,7 @@ class RemotePlayer extends EventTarget {
586
586
  currentFramePTS: metadata.mediaTime.toString(),
587
587
  ptsSessionId: this._ptsSessionId
588
588
  };
589
- const request = {target: "UI-Streamer", waitForResponse: false, message: JSON.stringify(message)};
589
+ const request = { target: "UI-Streamer", waitForResponse: false, message: JSON.stringify(message) };
590
590
  window.cefQuery({
591
591
  request: JSON.stringify(request),
592
592
  persistent: false
@@ -1,5 +1,5 @@
1
1
  import * as shaka from "shaka-player";
2
- import { remotePlayer, lifecycle } from "./api";
2
+ import { remotePlayer, lifecycle, getPlatformInfo } from "./api";
3
3
  import { sdkLogger, iso6393to1 } from "./utils";
4
4
 
5
5
  // Define custom error category
@@ -386,6 +386,18 @@ export class SenzaShakaPlayer extends shaka.Player {
386
386
  ]);
387
387
  };
388
388
 
389
+ // For live streams, we can set a default offset from the live edge
390
+ // This allows for synchronizing the start position for both local and remote players
391
+ // Note: For VOD content, negative start times are treated as 0
392
+ const { defaultInitialLiveOffset, minInitialLiveOffset } = getPlatformInfo()?.sessionInfo?.settings?.["ui-streamer"] || {};
393
+ if ((startTime === undefined || startTime === 0) && defaultInitialLiveOffset !== undefined) {
394
+ sdkLogger.debug(`load() was called with startTime=${startTime}, setting startTime to ${-defaultInitialLiveOffset}`);
395
+ startTime = -defaultInitialLiveOffset;
396
+ } else if (startTime <= 0 && minInitialLiveOffset !== undefined && startTime > -minInitialLiveOffset) {
397
+ sdkLogger.debug(`load() was called with startTime=${startTime}, setting startTime to ${-minInitialLiveOffset}`);
398
+ startTime = -minInitialLiveOffset;
399
+ }
400
+
389
401
  if (!this.isInRemotePlayback || remotePlayer.getAssetUri() !== url) {
390
402
  this._audioTracksMap = {};
391
403
  this._videoTracksMap = {};