@vindral/web-sdk 4.1.3 → 4.1.4-10-g067921a2

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/react.d.ts CHANGED
@@ -425,6 +425,14 @@ interface Options {
425
425
  * This can be used to provide user options to limit the video bandwidth usage.
426
426
  */
427
427
  maxVideoBitRate?: number;
428
+ /**
429
+ * Initial maximum bit rate cap applied when first connecting to a channel.
430
+ * This helps prevent buffering on initial connection by starting at a conservative bitrate.
431
+ * The client will adapt to higher bitrates as bandwidth allows if ABR is enabled.
432
+ *
433
+ * Default is 2.5 Mbps (2500000 bits per second).
434
+ */
435
+ maxInitialBitRate?: number;
428
436
  /**
429
437
  * Controls video element background behaviour while loading.
430
438
  * - If `false`, a black background will be shown.
@@ -843,7 +851,6 @@ type Statistics = ModuleStatistics & ReturnType<UserAgentInformation["getUserAge
843
851
  declare class Vindral extends Emitter<PublicVindralEvents> {
844
852
  #private;
845
853
  private static MAX_POOL_SIZE;
846
- private static INITIAL_MAX_BIT_RATE;
847
854
  private static DISCONNECT_TIMEOUT;
848
855
  private static REMOVE_CUE_THRESHOLD;
849
856
  /**
@@ -1593,7 +1600,7 @@ type ControllerAttributes = (typeof Controller.observedAttributes)[number];
1593
1600
  declare class Controller extends HTMLElement {
1594
1601
  #private;
1595
1602
  static observedAttributes: readonly [
1596
- ...("language" | "channels" | "buffering" | "paused" | "volume" | "muted" | "user-interacting" | "is-casting" | "cast-available" | "cast-receiver-name" | "ui-locked" | "hide-ui-on-pause" | "is-fullscreen" | "is-fullscreen-fallback" | "rendition-levels" | "rendition-level" | "max-video-bit-rate" | "channel-id" | "channel-group-id" | "pip-available" | "is-pip" | "airplay-available" | "is-airplaying" | "media" | "languages" | "text-tracks" | "text-track" | "needs-user-input-video" | "needs-user-input-audio" | "authentication-token" | "volume-level" | "cast" | "airplay" | "pip" | "fullscreen" | "vu-meter" | "poster-src")[],
1603
+ ...("language" | "channels" | "buffering" | "paused" | "volume" | "muted" | "user-interacting" | "is-casting" | "cast-available" | "cast-receiver-name" | "ui-locked" | "hide-ui-on-pause" | "is-fullscreen" | "is-fullscreen-fallback" | "rendition-levels" | "rendition-level" | "max-video-bit-rate" | "max-initial-bit-rate" | "channel-id" | "channel-group-id" | "pip-available" | "is-pip" | "airplay-available" | "is-airplaying" | "media" | "languages" | "text-tracks" | "text-track" | "needs-user-input-video" | "needs-user-input-audio" | "authentication-token" | "volume-level" | "cast" | "airplay" | "pip" | "fullscreen" | "vu-meter" | "poster-src")[],
1597
1604
  "url",
1598
1605
  "edge-url",
1599
1606
  "target-buffer-time",
@@ -1604,6 +1611,7 @@ declare class Controller extends HTMLElement {
1604
1611
  "min-buffer-time",
1605
1612
  "max-buffer-time",
1606
1613
  "max-audio-bit-rate",
1614
+ "max-initial-bit-rate",
1607
1615
  "burst-enabled",
1608
1616
  "mse-enabled",
1609
1617
  "mse-opus-enabled",
@@ -1720,7 +1728,7 @@ declare class PlayButton extends VindralButton {
1720
1728
  type PlayerAttributes = (typeof Player.observedAttributes)[number];
1721
1729
  declare class Player extends HTMLElement {
1722
1730
  #private;
1723
- static observedAttributes: readonly ("title" | "advanced" | "poster" | "language" | "channels" | "buffering" | "paused" | "volume" | "muted" | "user-interacting" | "is-casting" | "cast-available" | "cast-receiver-name" | "ui-locked" | "hide-ui-on-pause" | "is-fullscreen" | "is-fullscreen-fallback" | "rendition-levels" | "rendition-level" | "max-video-bit-rate" | "channel-id" | "channel-group-id" | "pip-available" | "is-pip" | "airplay-available" | "is-airplaying" | "media" | "languages" | "text-tracks" | "text-track" | "needs-user-input-video" | "needs-user-input-audio" | "authentication-token" | "volume-level" | "cast" | "airplay" | "pip" | "fullscreen" | "vu-meter" | "poster-src" | "url" | "offline" | "edge-url" | "target-buffer-time" | "cast-receiver-id" | "cast-background" | "log-level" | "max-size" | "min-buffer-time" | "max-buffer-time" | "max-audio-bit-rate" | "burst-enabled" | "mse-enabled" | "mse-opus-enabled" | "ios-background-play-enabled" | "ios-wake-lock-enabled" | "ios-media-element-enabled" | "abr-enabled" | "size-based-resolution-cap-enabled" | "telemetry-enabled" | "video-codecs" | "drm-headers" | "drm-queryparams" | "drm-widevine-video-robustness" | "drm-widevine-audio-robustness" | "drm-playready-video-robustness" | "drm-playready-audio-robustness" | "webtransport-enabled" | "reconnect-retries" | "auto-instance-enabled" | "refresh-poster-enabled" | "stream-poll-enabled")[];
1731
+ static observedAttributes: readonly ("title" | "advanced" | "poster" | "language" | "channels" | "buffering" | "paused" | "volume" | "muted" | "user-interacting" | "is-casting" | "cast-available" | "cast-receiver-name" | "ui-locked" | "hide-ui-on-pause" | "is-fullscreen" | "is-fullscreen-fallback" | "rendition-levels" | "rendition-level" | "max-video-bit-rate" | "max-initial-bit-rate" | "channel-id" | "channel-group-id" | "pip-available" | "is-pip" | "airplay-available" | "is-airplaying" | "media" | "languages" | "text-tracks" | "text-track" | "needs-user-input-video" | "needs-user-input-audio" | "authentication-token" | "volume-level" | "cast" | "airplay" | "pip" | "fullscreen" | "vu-meter" | "poster-src" | "url" | "offline" | "edge-url" | "target-buffer-time" | "cast-receiver-id" | "cast-background" | "log-level" | "max-size" | "min-buffer-time" | "max-buffer-time" | "max-audio-bit-rate" | "burst-enabled" | "mse-enabled" | "mse-opus-enabled" | "ios-background-play-enabled" | "ios-wake-lock-enabled" | "ios-media-element-enabled" | "abr-enabled" | "size-based-resolution-cap-enabled" | "telemetry-enabled" | "video-codecs" | "drm-headers" | "drm-queryparams" | "drm-widevine-video-robustness" | "drm-widevine-audio-robustness" | "drm-playready-video-robustness" | "drm-playready-audio-robustness" | "webtransport-enabled" | "reconnect-retries" | "auto-instance-enabled" | "refresh-poster-enabled" | "stream-poll-enabled")[];
1724
1732
  constructor();
1725
1733
  connectedCallback(): void;
1726
1734
  disconnectedCallback(): void;
@@ -1840,11 +1848,11 @@ declare class VolumeRange extends VindralRange {
1840
1848
  get volume(): string;
1841
1849
  get muted(): boolean;
1842
1850
  }
1843
- type CustomElement<T, K extends string> = DetailedHTMLProps<HtmlHTMLAttributes<T> & {
1851
+ type CustomElement<T, K extends string> = Partial<Omit<DetailedHTMLProps<HtmlHTMLAttributes<T>, T>, "class"> & {
1844
1852
  [Key in K]?: string;
1845
1853
  } & {
1846
1854
  class?: string;
1847
- }, T>;
1855
+ }>;
1848
1856
  /**
1849
1857
  * @ignore
1850
1858
  */