diff --git a/web/src/pages/Live.tsx b/web/src/pages/Live.tsx
index bae56b6bb..5449fef9b 100644
--- a/web/src/pages/Live.tsx
+++ b/web/src/pages/Live.tsx
@@ -83,7 +83,7 @@ function Live() {
}
if (selectedCamera) {
- return ;
+ return ;
}
return (
diff --git a/web/src/views/live/LiveCameraView.tsx b/web/src/views/live/LiveCameraView.tsx
index cc27b72bf..3d3ea23c7 100644
--- a/web/src/views/live/LiveCameraView.tsx
+++ b/web/src/views/live/LiveCameraView.tsx
@@ -20,7 +20,7 @@ import {
import { TooltipProvider } from "@/components/ui/tooltip";
import { useResizeObserver } from "@/hooks/resize-observer";
import useKeyboardListener from "@/hooks/use-keyboard-listener";
-import { CameraConfig } from "@/types/frigateConfig";
+import { CameraConfig, FrigateConfig } from "@/types/frigateConfig";
import { LiveStreamMetadata, VideoResolutionType } from "@/types/live";
import { CameraPtzInfo } from "@/types/ptz";
import { RecordingStartingPoint } from "@/types/record";
@@ -75,9 +75,13 @@ import { TransformWrapper, TransformComponent } from "react-zoom-pan-pinch";
import useSWR from "swr";
type LiveCameraViewProps = {
+ config?: FrigateConfig;
camera: CameraConfig;
};
-export default function LiveCameraView({ camera }: LiveCameraViewProps) {
+export default function LiveCameraView({
+ config,
+ camera,
+}: LiveCameraViewProps) {
const navigate = useNavigate();
const { isPortrait } = useMobileOrientation();
const mainRef = useRef(null);
@@ -86,8 +90,17 @@ export default function LiveCameraView({ camera }: LiveCameraViewProps) {
// supported features
+ const isRestreamed = useMemo(
+ () =>
+ config &&
+ Object.keys(config.go2rtc.streams || {}).includes(
+ camera.live.stream_name,
+ ),
+ [camera, config],
+ );
+
const { data: cameraMetadata } = useSWR(
- `go2rtc/streams/${camera.live.stream_name}`,
+ isRestreamed ? `go2rtc/streams/${camera.live.stream_name}` : null,
{
revalidateOnFocus: false,
},