@vindral/web-sdk 4.1.6 → 4.1.7-1-g0bc6e715

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.
@@ -27,7 +27,7 @@ var X = (B, g, A) => new Promise((J, k) => {
27
27
  }, o = (h) => h.done ? J(h.value) : Promise.resolve(h.value).then(y, a);
28
28
  o((A = A.apply(B, g)).next());
29
29
  });
30
- import { F as RA, d as JA, n as kA } from "./D1E3hbbb.js";
30
+ import { F as RA, d as JA, n as kA } from "./NssX7vGm.js";
31
31
  var hA = (function() {
32
32
  var B = typeof document != "undefined" && document.currentScript ? document.currentScript.src : void 0;
33
33
  return (function(g) {
package/core.d.ts CHANGED
@@ -852,12 +852,60 @@ interface QualityOfServiceModuleStatistics {
852
852
  timeSpentRatio: {
853
853
  [qualityIndex: string]: number;
854
854
  };
855
+ /**
856
+ * Ratio of time spent buffering to total active time (0-1).
857
+ * Provides a normalized buffering quality metric regardless of session length.
858
+ * A value of 0.05 means 5% of the active session was spent buffering.
859
+ */
860
+ bufferingRatio: number;
861
+ /**
862
+ * Number of buffering events per minute of active playback.
863
+ * Normalizes buffering event count for comparison across sessions of different durations.
864
+ */
865
+ bufferingEventsPerMinute: number;
866
+ /**
867
+ * Weighted average rendition index based on time spent at each level.
868
+ * Lower values indicate higher quality (index 0 is the highest quality).
869
+ * Example: 0.3 means mostly on the best quality with some time on lower qualities.
870
+ */
871
+ averageRenditionIndex: number;
872
+ /**
873
+ * Buffering ratio for the last minute of playback (0-1).
874
+ * Useful for detecting recent degradation vs overall session quality.
875
+ */
876
+ bufferingRatioPerMinute: number;
877
+ /**
878
+ * Number of rendition level changes (upgrades + downgrades) per minute.
879
+ * Measures ABR stability - lower values indicate a more stable experience.
880
+ */
881
+ renditionChangesPerMinute: number;
882
+ /**
883
+ * Average time in milliseconds spent buffering per buffering event.
884
+ * Helps distinguish many short buffering events from fewer long ones.
885
+ */
886
+ timePerBufferingEvent: number;
855
887
  }
856
888
  interface SyncModuleStatistics {
857
889
  drift: number | undefined;
858
- driftAdjustmentCount: number;
859
- timeshiftDriftAdjustmentCount: number;
890
+ seekAdjustmentCount: number;
891
+ timeshiftAdjustmentCount: number;
860
892
  seekTime: number;
893
+ /**
894
+ * Total time spent seeking in milliseconds for the entire session.
895
+ * High values indicate frequent or slow seeks, which may impact user experience.
896
+ */
897
+ totalSeekTime: number;
898
+ seekToleranceMultiplier: number;
899
+ currentSeekToleranceMs: number;
900
+ currentAheadToleranceMs: number;
901
+ isPlaybackRateAdjustmentEnabled: boolean;
902
+ playbackRate: number;
903
+ playbackRateAdjustmentCount: number;
904
+ /**
905
+ * Average absolute drift in milliseconds over a rolling window.
906
+ * Measures how far off sync the playback typically is, regardless of direction.
907
+ */
908
+ averageDrift: number;
861
909
  }
862
910
  interface VideoPlayerStatistics {
863
911
  renderedFrameCount: number;
@@ -951,6 +999,22 @@ export type Statistics = ModuleStatistics & ReturnType<UserAgentInformation["get
951
999
  * Average bitrate for the entire session in bits/second.
952
1000
  */
953
1001
  averageBitRate?: number;
1002
+ /**
1003
+ * Number of reconnections per hour of uptime.
1004
+ * Measures connection stability over time. Lower is better.
1005
+ * Excludes the initial connection, so a stable session will have a value of 0.
1006
+ */
1007
+ reconnectsPerHour: number;
1008
+ /**
1009
+ * Number of seek adjustments (seeks to catch up) per minute of active playback.
1010
+ * High values indicate sync issues or network instability.
1011
+ */
1012
+ seekAdjustmentsPerMinute: number;
1013
+ /**
1014
+ * Number of timeshift adjustments per minute of active playback.
1015
+ * Relevant for timeshift-enabled streams.
1016
+ */
1017
+ timeshiftAdjustmentsPerMinute: number;
954
1018
  };
955
1019
  /**
956
1020
  * Represents a Vindral client instance
@@ -1433,6 +1497,11 @@ interface ConnectionStatistics {
1433
1497
  * Total number of connection attempts since instantiation.
1434
1498
  */
1435
1499
  connectionAttemptCount: number;
1500
+ /**
1501
+ * Ratio of successful connections to total connection attempts (0-1).
1502
+ * A value of 1.0 means every connection attempt succeeded.
1503
+ */
1504
+ connectionSuccessRatio: number;
1436
1505
  connectionProtocol: "vindral_ws" | "moq" | undefined;
1437
1506
  }
1438
1507
  /**
package/core.js CHANGED
@@ -1,4 +1,4 @@
1
- import { c as C, e as I, f as _, a as O, C as D, D as T, I as a, N as A, V as s, g as r } from "./D1E3hbbb.js";
1
+ import { c as C, e as I, f as _, a as O, C as D, D as T, I as a, N as A, V as s, g as r } from "./NssX7vGm.js";
2
2
  export {
3
3
  C as AUTHENTICATION_EXPIRED_CODE,
4
4
  I as AUTHENTICATION_FAILED_CODE,
package/legacy.d.ts CHANGED
@@ -867,12 +867,60 @@ interface QualityOfServiceModuleStatistics {
867
867
  timeSpentRatio: {
868
868
  [qualityIndex: string]: number;
869
869
  };
870
+ /**
871
+ * Ratio of time spent buffering to total active time (0-1).
872
+ * Provides a normalized buffering quality metric regardless of session length.
873
+ * A value of 0.05 means 5% of the active session was spent buffering.
874
+ */
875
+ bufferingRatio: number;
876
+ /**
877
+ * Number of buffering events per minute of active playback.
878
+ * Normalizes buffering event count for comparison across sessions of different durations.
879
+ */
880
+ bufferingEventsPerMinute: number;
881
+ /**
882
+ * Weighted average rendition index based on time spent at each level.
883
+ * Lower values indicate higher quality (index 0 is the highest quality).
884
+ * Example: 0.3 means mostly on the best quality with some time on lower qualities.
885
+ */
886
+ averageRenditionIndex: number;
887
+ /**
888
+ * Buffering ratio for the last minute of playback (0-1).
889
+ * Useful for detecting recent degradation vs overall session quality.
890
+ */
891
+ bufferingRatioPerMinute: number;
892
+ /**
893
+ * Number of rendition level changes (upgrades + downgrades) per minute.
894
+ * Measures ABR stability - lower values indicate a more stable experience.
895
+ */
896
+ renditionChangesPerMinute: number;
897
+ /**
898
+ * Average time in milliseconds spent buffering per buffering event.
899
+ * Helps distinguish many short buffering events from fewer long ones.
900
+ */
901
+ timePerBufferingEvent: number;
870
902
  }
871
903
  interface SyncModuleStatistics {
872
904
  drift: number | undefined;
873
- driftAdjustmentCount: number;
874
- timeshiftDriftAdjustmentCount: number;
905
+ seekAdjustmentCount: number;
906
+ timeshiftAdjustmentCount: number;
875
907
  seekTime: number;
908
+ /**
909
+ * Total time spent seeking in milliseconds for the entire session.
910
+ * High values indicate frequent or slow seeks, which may impact user experience.
911
+ */
912
+ totalSeekTime: number;
913
+ seekToleranceMultiplier: number;
914
+ currentSeekToleranceMs: number;
915
+ currentAheadToleranceMs: number;
916
+ isPlaybackRateAdjustmentEnabled: boolean;
917
+ playbackRate: number;
918
+ playbackRateAdjustmentCount: number;
919
+ /**
920
+ * Average absolute drift in milliseconds over a rolling window.
921
+ * Measures how far off sync the playback typically is, regardless of direction.
922
+ */
923
+ averageDrift: number;
876
924
  }
877
925
  interface VideoPlayerStatistics {
878
926
  renderedFrameCount: number;
@@ -966,6 +1014,22 @@ export type Statistics = ModuleStatistics & ReturnType<UserAgentInformation["get
966
1014
  * Average bitrate for the entire session in bits/second.
967
1015
  */
968
1016
  averageBitRate?: number;
1017
+ /**
1018
+ * Number of reconnections per hour of uptime.
1019
+ * Measures connection stability over time. Lower is better.
1020
+ * Excludes the initial connection, so a stable session will have a value of 0.
1021
+ */
1022
+ reconnectsPerHour: number;
1023
+ /**
1024
+ * Number of seek adjustments (seeks to catch up) per minute of active playback.
1025
+ * High values indicate sync issues or network instability.
1026
+ */
1027
+ seekAdjustmentsPerMinute: number;
1028
+ /**
1029
+ * Number of timeshift adjustments per minute of active playback.
1030
+ * Relevant for timeshift-enabled streams.
1031
+ */
1032
+ timeshiftAdjustmentsPerMinute: number;
969
1033
  };
970
1034
  /**
971
1035
  * Represents a Vindral client instance
@@ -1448,6 +1512,11 @@ interface ConnectionStatistics {
1448
1512
  * Total number of connection attempts since instantiation.
1449
1513
  */
1450
1514
  connectionAttemptCount: number;
1515
+ /**
1516
+ * Ratio of successful connections to total connection attempts (0-1).
1517
+ * A value of 1.0 means every connection attempt succeeded.
1518
+ */
1519
+ connectionSuccessRatio: number;
1451
1520
  connectionProtocol: "vindral_ws" | "moq" | undefined;
1452
1521
  }
1453
1522
  /**