mirror of
https://github.com/streamyfin/streamyfin.git
synced 2026-07-17 18:03:01 +01:00
feat(casting): add chromecastProfile and chromecastMaxBitrate settings
This commit is contained in:
@@ -11,6 +11,7 @@ import { useCallback, useEffect, useMemo } from "react";
|
|||||||
import { BITRATES, type Bitrate } from "@/components/BitrateSelector";
|
import { BITRATES, type Bitrate } from "@/components/BitrateSelector";
|
||||||
import * as ScreenOrientation from "@/packages/expo-screen-orientation";
|
import * as ScreenOrientation from "@/packages/expo-screen-orientation";
|
||||||
import { apiAtom } from "@/providers/JellyfinProvider";
|
import { apiAtom } from "@/providers/JellyfinProvider";
|
||||||
|
import type { ChromecastProfileMode } from "@/utils/casting/capabilities";
|
||||||
import { writeInfoLog } from "@/utils/log";
|
import { writeInfoLog } from "@/utils/log";
|
||||||
import { storage } from "../mmkv";
|
import { storage } from "../mmkv";
|
||||||
|
|
||||||
@@ -181,6 +182,10 @@ export type Settings = {
|
|||||||
useKefinTweaks: boolean;
|
useKefinTweaks: boolean;
|
||||||
hiddenLibraries?: string[];
|
hiddenLibraries?: string[];
|
||||||
enableH265ForChromecast: boolean;
|
enableH265ForChromecast: boolean;
|
||||||
|
/** Chromecast profile selection mode. "auto" detects per device. */
|
||||||
|
chromecastProfile: ChromecastProfileMode;
|
||||||
|
/** Optional manual Chromecast video bitrate cap, in bits per second. */
|
||||||
|
chromecastMaxBitrate?: number;
|
||||||
maxAutoPlayEpisodeCount: MaxAutoPlayEpisodeCount;
|
maxAutoPlayEpisodeCount: MaxAutoPlayEpisodeCount;
|
||||||
autoPlayEpisodeCount: number;
|
autoPlayEpisodeCount: number;
|
||||||
autoPlayNextEpisode: boolean;
|
autoPlayNextEpisode: boolean;
|
||||||
@@ -272,6 +277,8 @@ export const defaultValues: Settings = {
|
|||||||
useKefinTweaks: false,
|
useKefinTweaks: false,
|
||||||
hiddenLibraries: [],
|
hiddenLibraries: [],
|
||||||
enableH265ForChromecast: false,
|
enableH265ForChromecast: false,
|
||||||
|
chromecastProfile: "auto",
|
||||||
|
chromecastMaxBitrate: undefined,
|
||||||
maxAutoPlayEpisodeCount: { key: "3", value: 3 },
|
maxAutoPlayEpisodeCount: { key: "3", value: 3 },
|
||||||
autoPlayEpisodeCount: 0,
|
autoPlayEpisodeCount: 0,
|
||||||
autoPlayNextEpisode: true,
|
autoPlayNextEpisode: true,
|
||||||
|
|||||||
Reference in New Issue
Block a user