From 68bc549d6a67ae832c06dd37032a70e84a66c5c6 Mon Sep 17 00:00:00 2001 From: Bram Kragten Date: Wed, 2 Jun 2021 18:34:18 +0200 Subject: [PATCH] Use HLS light build (#9338) * Use HLS light build * Bump hls, backBufferLength --- package.json | 2 +- src/components/ha-hls-player.ts | 12 +++++++++--- yarn.lock | 8 ++++---- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index c316946391..e54c178377 100644 --- a/package.json +++ b/package.json @@ -108,7 +108,7 @@ "fecha": "^4.2.0", "fuse.js": "^6.0.0", "google-timezones-json": "^1.0.2", - "hls.js": "^1.0.4", + "hls.js": "^1.0.5", "home-assistant-js-websocket": "^5.10.0", "idb-keyval": "^5.0.5", "intl-messageformat": "^9.6.16", diff --git a/src/components/ha-hls-player.ts b/src/components/ha-hls-player.ts index 857e2c1874..6120e5aa91 100644 --- a/src/components/ha-hls-player.ts +++ b/src/components/ha-hls-player.ts @@ -13,6 +13,11 @@ import { nextRender } from "../common/util/render-status"; import { getExternalConfig } from "../external_app/external_config"; import type { HomeAssistant } from "../types"; +type HlsLite = Omit< + HlsType, + "subtitleTrackController" | "audioTrackController" | "emeController" +>; + @customElement("ha-hls-player") class HaHLSPlayer extends LitElement { @property({ attribute: false }) public hass!: HomeAssistant; @@ -39,7 +44,7 @@ class HaHLSPlayer extends LitElement { @state() private _attached = false; - private _hlsPolyfillInstance?: HlsType; + private _hlsPolyfillInstance?: HlsLite; private _useExoPlayer = false; @@ -103,7 +108,8 @@ class HaHLSPlayer extends LitElement { const useExoPlayerPromise = this._getUseExoPlayer(); const masterPlaylistPromise = fetch(this.url); - const Hls = (await import("hls.js")).default; + const Hls: typeof HlsType = (await import("hls.js/dist/hls.light.min.js")) + .default; let hlsSupported = Hls.isSupported(); if (!hlsSupported) { @@ -182,7 +188,7 @@ class HaHLSPlayer extends LitElement { url: string ) { const hls = new Hls({ - liveBackBufferLength: 60, + backBufferLength: 60, fragLoadingTimeOut: 30000, manifestLoadingTimeOut: 30000, levelLoadingTimeOut: 30000, diff --git a/yarn.lock b/yarn.lock index 5a9c6340ca..af5d0f949e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7462,10 +7462,10 @@ he@1.2.0, he@^1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -hls.js@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-1.0.4.tgz#1b191f0f49c992e5c22d4a648ac73630d13d3c2e" - integrity sha512-sTea9L0ORE9u5dThUjEhDP4t9YzakEYRyMHEYQctaLZf2X9ihjmUbqKneExQWHXZz2cYQs5ihaKUe8QnrQDp7Q== +hls.js@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/hls.js/-/hls.js-1.0.5.tgz#3879bcf5ebcd6cdc188279cf9c15a74ac773630c" + integrity sha512-G7euEVuzM2AMZ69OzpQikO0HDJTMReX8OMUJmGhgwcjyh2OSsL2mGiqbL+6aK6wmUJelUfIh+FLyH73udZVYKQ== hmac-drbg@^1.0.1: version "1.0.1"