Don't check for go2rtc info if camera is not restramed

This commit is contained in:
Nicolas Mowen 2024-05-19 05:54:40 -06:00
parent 47491fd1cf
commit 66a903bf9d
2 changed files with 17 additions and 4 deletions

View File

@ -83,7 +83,7 @@ function Live() {
} }
if (selectedCamera) { if (selectedCamera) {
return <LiveCameraView camera={selectedCamera} />; return <LiveCameraView config={config} camera={selectedCamera} />;
} }
return ( return (

View File

@ -20,7 +20,7 @@ import {
import { TooltipProvider } from "@/components/ui/tooltip"; import { TooltipProvider } from "@/components/ui/tooltip";
import { useResizeObserver } from "@/hooks/resize-observer"; import { useResizeObserver } from "@/hooks/resize-observer";
import useKeyboardListener from "@/hooks/use-keyboard-listener"; 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 { LiveStreamMetadata, VideoResolutionType } from "@/types/live";
import { CameraPtzInfo } from "@/types/ptz"; import { CameraPtzInfo } from "@/types/ptz";
import { RecordingStartingPoint } from "@/types/record"; import { RecordingStartingPoint } from "@/types/record";
@ -75,9 +75,13 @@ import { TransformWrapper, TransformComponent } from "react-zoom-pan-pinch";
import useSWR from "swr"; import useSWR from "swr";
type LiveCameraViewProps = { type LiveCameraViewProps = {
config?: FrigateConfig;
camera: CameraConfig; camera: CameraConfig;
}; };
export default function LiveCameraView({ camera }: LiveCameraViewProps) { export default function LiveCameraView({
config,
camera,
}: LiveCameraViewProps) {
const navigate = useNavigate(); const navigate = useNavigate();
const { isPortrait } = useMobileOrientation(); const { isPortrait } = useMobileOrientation();
const mainRef = useRef<HTMLDivElement | null>(null); const mainRef = useRef<HTMLDivElement | null>(null);
@ -86,8 +90,17 @@ export default function LiveCameraView({ camera }: LiveCameraViewProps) {
// supported features // supported features
const isRestreamed = useMemo(
() =>
config &&
Object.keys(config.go2rtc.streams || {}).includes(
camera.live.stream_name,
),
[camera, config],
);
const { data: cameraMetadata } = useSWR<LiveStreamMetadata>( const { data: cameraMetadata } = useSWR<LiveStreamMetadata>(
`go2rtc/streams/${camera.live.stream_name}`, isRestreamed ? `go2rtc/streams/${camera.live.stream_name}` : null,
{ {
revalidateOnFocus: false, revalidateOnFocus: false,
}, },