Files
claude 9e33a343ab
Some checks failed
release / build-release (push) Has been cancelled
Floatplane channel plugin for Jellyfin 10.10.x: browse, HLS proxy, cookie session, CI release
- IChannel: creators -> sub-channels -> video posts (public listing API, search mapped)
- IRequiresMediaInfoCallback -> signed proxy URLs; stream controller rewrites HLS so the
  AES-128 key is fetched server-side with the session cookie, segments stay on the CDN
- delivery/info cached per token lifetime and throttled (~2/min)
- config page: paste sails.sid + validate, extra creators, quality, search test
- scripts/package.sh -> plugin folder + zip + md5 + manifest.json; Gitea release workflow
- research docs, HAR analysis (HAR itself gitignored), install-pi5.sh

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-25 09:42:27 +01:00

82 lines
1.9 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { Args, Channels, Resolutions, Settings } from "./types";
export const defaultResolutions: Resolutions = ["360", "720", "1080", "2160"];
export const defaultSubChannels: Record<string, Channels> = {
"59f94c0bdd241b70349eb72b": [
{
title: "TalkLinked",
skip: false,
isChannel: "(post) => post.title?.toLowerCase().includes('talklinked')",
},
{
title: "TechLinked Shorts",
skip: false,
isChannel: "(post) => post.title?.toLowerCase().includes('tl short: ')",
},
{
title: "The WAN Show",
skip: false,
isChannel: "(post) => isChannel(post, '63fe42c309e691e4e36de93d') && post.title?.toLowerCase().includes('- wan show')",
},
{
title: "LMG Livestream VODs",
skip: false,
isChannel: "(post) => post.title?.toLowerCase().includes('livestream vod – ')",
},
],
};
export const defaultArgs: Args = {
headless: false,
updateCheck: true,
plexUsername: "",
plexPassword: "",
sanityCheck: false,
dbPath: "./db",
ffmpegPath: "",
settingsPath: "",
};
export const defaultSettings: Settings = {
__SettingsWiki: "https://github.com/Inrixia/Floatplane-Downloader/blob/master/wiki/settings.md",
runQuickstartPrompts: true,
floatplane: {
videosToSearch: 5,
videoResolution: "1080",
waitForNewVideos: true,
seekAndDestroy: [],
},
maxDownloadSpeed: -1,
plex: {
sectionsToUpdate: [],
enabled: false,
token: "",
},
filePathFormatting: "./videos/%channelTitle%/%channelTitle% - S%year%E%month%%day%%hour%%minute%%second% - %videoTitle%",
extras: {
stripSubchannelPrefix: true,
downloadArtwork: true,
downloadCaptions: true,
saveNfo: true,
considerAllNonPartialDownloaded: false,
},
artworkSuffix: "",
postProcessingCommand: "",
subscriptions: {},
metrics: {
prometheusExporterPort: null,
contributeMetrics: true,
},
notifications: {
telegram: {
enabled: false,
token: "",
chatId: "",
},
discord: {
enabled: false,
webhookUrl: "",
},
},
};