@vindral/web-sdk 4.1.7 → 4.1.8-1-g16a70656

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/legacy.d.ts CHANGED
@@ -867,18 +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
905
  seekAdjustmentCount: number;
874
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;
876
913
  seekToleranceMultiplier: number;
877
914
  currentSeekToleranceMs: number;
878
915
  currentAheadToleranceMs: number;
879
916
  isPlaybackRateAdjustmentEnabled: boolean;
880
917
  playbackRate: number;
881
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;
882
924
  }
883
925
  interface VideoPlayerStatistics {
884
926
  renderedFrameCount: number;
@@ -972,6 +1014,22 @@ export type Statistics = ModuleStatistics & ReturnType<UserAgentInformation["get
972
1014
  * Average bitrate for the entire session in bits/second.
973
1015
  */
974
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;
975
1033
  };
976
1034
  /**
977
1035
  * Represents a Vindral client instance
@@ -1454,7 +1512,12 @@ interface ConnectionStatistics {
1454
1512
  * Total number of connection attempts since instantiation.
1455
1513
  */
1456
1514
  connectionAttemptCount: number;
1457
- connectionProtocol: "vindral_ws" | "moq" | undefined;
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;
1520
+ connectionProtocol: "vindral_ws" | "moq" | "moq_ws" | undefined;
1458
1521
  }
1459
1522
  /**
1460
1523
  * Contextual information about the language switch