import { useEffect, useMemo } from "react"; import { MWStreamType } from "@/backend/helpers/streams"; import { BrandPill } from "@/components/layout/BrandPill"; import { Player } from "@/components/player"; import { AutoPlayStart } from "@/components/player/atoms"; import { usePlayer } from "@/components/player/hooks/usePlayer"; import { useShouldShowControls } from "@/components/player/hooks/useShouldShowControls"; import { ScrapingPart } from "@/pages/parts/player/ScrapingPart"; import { PlayerMeta, metaToScrapeMedia, playerStatus, } from "@/stores/player/slices/source"; export function PlayerView() { const { status, setScrapeStatus, playMedia, setMeta } = usePlayer(); const desktopControlsVisible = useShouldShowControls(); const meta = useMemo( () => ({ type: "show", title: "House", tmdbId: "1408", releaseYear: 2004, episode: { number: 1, title: "Pilot", tmdbId: "63738", }, season: { number: 1, tmdbId: "3674", title: "Season 1", }, }), [] ); useEffect(() => { setMeta(meta); }, [setMeta, meta]); const scrapeMedia = useMemo(() => metaToScrapeMedia(meta), [meta]); return ( {status === playerStatus.SCRAPING ? ( { if (out?.stream.type !== "file") return; const qualities = Object.keys( out.stream.qualities ) as (keyof typeof out.stream.qualities)[]; const file = out.stream.qualities[qualities[0]]; if (!file) return; playMedia({ type: MWStreamType.MP4, url: file.url, }); }} /> ) : null}
/
); }