@vindral/web-sdk 4.4.0 → 4.5.0-7-gbf689372

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/core.d.ts CHANGED
@@ -992,6 +992,24 @@ interface SyncModuleStatistics {
992
992
  * Measures how far off sync the playback typically is, regardless of direction.
993
993
  */
994
994
  averageDrift: number;
995
+ /**
996
+ * Whether the video stream **currently arriving** presents frames out of decode order. Reported
997
+ * from SyncModule rather than the playback modules because it sits upstream of both on every ingest
998
+ * route, so one detector covers MSE and WebCodecs alike and the readout comes from the same
999
+ * observation that gates timeshift.
1000
+ *
1001
+ * Not the same as *whether timeshift is currently suppressed* — stated as a rule rather than a list
1002
+ * of cases, because an earlier version of this comment enumerated them and was incomplete. This is
1003
+ * {@link BFrameTracker}'s state, which clears whenever the stream identity changes (rendition or
1004
+ * channel) or {@link reset} runs; the gate above it is a session-sticky latch that never clears. Any
1005
+ * of those therefore leaves this false — until the detector re-latches a fragment or two later —
1006
+ * while timeshift stays suppressed.
1007
+ *
1008
+ * Both scopes are deliberate: this answers "does the stream in front of us reorder", which is what
1009
+ * is useful when watching a ladder, and the gate needs the opposite bias. Do not read either as the
1010
+ * other.
1011
+ */
1012
+ videoHasBFrames: boolean;
995
1013
  }
996
1014
  interface VideoPlayerStatistics {
997
1015
  renderedFrameCount: number;
@@ -1131,6 +1149,12 @@ export declare class Vindral extends Emitter<PublicVindralEvents> {
1131
1149
  private userAgentInformation;
1132
1150
  private encryptedMediaExtensions;
1133
1151
  private sampleProcessingSesssions;
1152
+ /**
1153
+ * Dedupe the per-fragment diagnostics to once per rendition stretch — one gate per warning, so a
1154
+ * rendition tripping both reports both. See the warn sites in the moq-data handler.
1155
+ */
1156
+ private readonly unbackedSamplesWarned;
1157
+ private readonly unextractableSamplesWarned;
1134
1158
  private sizes;
1135
1159
  private isSuspended;
1136
1160
  private disconnectTimeout;
package/core.js CHANGED
@@ -1,3 +1,3 @@
1
- import { t as e } from "./BMftV7tq.js";
1
+ import { t as e } from "./hzC7OGw_.js";
2
2
  import { a as t, c as n, i as r, l as i, n as a, o, r as s, s as c, u as l } from "./C01DcfYu.js";
3
3
  export { a as AUTHENTICATION_EXPIRED_CODE, s as AUTHENTICATION_FAILED_CODE, r as CHANNEL_NOT_FOUND_CODE, t as CONNECTION_FAILED_AFTER_RETRIES_CODE, o as CONNECTION_FAILED_CODE, c as DISCONNECTED_BY_EDGE, n as INACTIVITY_CODE, i as NO_INCOMING_DATA, e as Vindral, l as VindralError };