mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-04-19 05:21:55 +03:00
Unload HLS player on unmount so segments don't continue to load
This commit is contained in:
parent
4347402fcc
commit
381c50a4e1
@ -123,13 +123,6 @@ export default function HlsVideoPlayer({
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// we must destroy the hlsRef every time the source changes
|
|
||||||
// so that we can create a new HLS instance with startPosition
|
|
||||||
// set at the optimal point in time
|
|
||||||
if (hlsRef.current) {
|
|
||||||
hlsRef.current.destroy();
|
|
||||||
}
|
|
||||||
|
|
||||||
hlsRef.current = new Hls({
|
hlsRef.current = new Hls({
|
||||||
maxBufferLength: 10,
|
maxBufferLength: 10,
|
||||||
maxBufferSize: 20 * 1000 * 1000,
|
maxBufferSize: 20 * 1000 * 1000,
|
||||||
@ -138,6 +131,15 @@ export default function HlsVideoPlayer({
|
|||||||
hlsRef.current.attachMedia(videoRef.current);
|
hlsRef.current.attachMedia(videoRef.current);
|
||||||
hlsRef.current.loadSource(currentSource.playlist);
|
hlsRef.current.loadSource(currentSource.playlist);
|
||||||
videoRef.current.playbackRate = currentPlaybackRate;
|
videoRef.current.playbackRate = currentPlaybackRate;
|
||||||
|
|
||||||
|
return () => {
|
||||||
|
// we must destroy the hlsRef every time the source changes
|
||||||
|
// so that we can create a new HLS instance with startPosition
|
||||||
|
// set at the optimal point in time
|
||||||
|
if (hlsRef.current) {
|
||||||
|
hlsRef.current.destroy();
|
||||||
|
}
|
||||||
|
}
|
||||||
}, [videoRef, hlsRef, useHlsCompat, currentSource]);
|
}, [videoRef, hlsRef, useHlsCompat, currentSource]);
|
||||||
|
|
||||||
// state handling
|
// state handling
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user