diff --git a/web/src/routes/Birdseye.jsx b/web/src/routes/Birdseye.jsx index 6571d8eab..92a0eac77 100644 --- a/web/src/routes/Birdseye.jsx +++ b/web/src/routes/Birdseye.jsx @@ -18,7 +18,7 @@ export default function Birdseye() { } let player; - if (viewSource == 'mse' && config.restream.birdseye) { + if (viewSource == 'mse' && config.birdseye.restream) { if ('MediaSource' in window) { player = ( diff --git a/web/src/routes/Camera.jsx b/web/src/routes/Camera.jsx index 8d9c0dd44..b3bf72005 100644 --- a/web/src/routes/Camera.jsx +++ b/web/src/routes/Camera.jsx @@ -26,13 +26,14 @@ export default function Camera({ camera }) { const cameraConfig = config?.cameras[camera]; const jsmpegWidth = cameraConfig - ? Math.round(cameraConfig.restream.jsmpeg.height * (cameraConfig.detect.width / cameraConfig.detect.height)) + ? Math.round(cameraConfig.live.height * (cameraConfig.detect.width / cameraConfig.detect.height)) : 0; const [viewSource, setViewSource, sourceIsLoaded] = usePersistence( `${camera}-source`, getDefaultLiveMode(config, cameraConfig) ); - const sourceValues = cameraConfig && cameraConfig.restream.enabled ? ['mse', 'webrtc', 'jsmpeg'] : ['jsmpeg']; + const sourceValues = + config?.restream && Object.keys(config.restream).includes(camera) ? ['mse', 'webrtc', 'jsmpeg'] : ['jsmpeg']; const [options, setOptions] = usePersistence(`${camera}-feed`, emptyObject); const handleSetOption = useCallback( @@ -136,7 +137,7 @@ export default function Camera({ camera }) { player = (
- +
);