From 5514385c87440b4e77ae772f533b30927dcdb303 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Velad=20Galv=C3=A1n?= Date: Tue, 31 Jan 2023 17:25:32 +0100 Subject: [PATCH] feat(HLS): Improve Low Latency performance in HLS (#4952) In Low Latency HLS, the low latency segments are integer segments instead of partial segments like in DASH, so we can avoid reading part of the segment and increase performance on low-end devices. --- lib/media/streaming_engine.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/media/streaming_engine.js b/lib/media/streaming_engine.js index 83f1dffd68..0ba273a3a6 100644 --- a/lib/media/streaming_engine.js +++ b/lib/media/streaming_engine.js @@ -1261,10 +1261,9 @@ shaka.media.StreamingEngine = class { stream.mimeType == 'audio/mp4'; const isReadableStreamSupported = window.ReadableStream; // Enable MP4 low latency streaming with ReadableStream chunked data. - // Disabled when AES-128 is present, as we cannot decrypt part of a - // segment. + // And only for DASH. if (this.config_.lowLatencyMode && isReadableStreamSupported && isMP4 && - !reference.hlsAes128Key) { + this.manifest_.type != shaka.media.ManifestParser.HLS) { let remaining = new Uint8Array(0); let processingResult = false; let callbackCalled = false;