Commit graph

171 commits

Author SHA1 Message Date
Jos Vooges | STH
0f7b566626 Add Plex-like live streams with viewer labels and progress, plus admin UI redesign.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-29 01:24:55 +02:00
Jos Vooges | STH
54d70735d8 Fix Linux amd64 Statfs Type cast for media-node disk dedupe build.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-27 07:41:24 +02:00
Jos Vooges | STH
106aa996a4 Fix storage double-count, add incremental catch-up scan, improve 4K detection.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-27 07:39:43 +02:00
Jos Vooges | STH
a26d1a4c45 Add Synology media-node install script for multi-NAS enrollments.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 04:25:23 +02:00
Jos Vooges | STH
0611cb5f8c Skip redundant rescans on HELLO and speed up local full-scan indexing. 2026-08-26 03:05:06 +02:00
Jos Vooges | STH
76c989ba3c Show node scan status and fast-path shelf updates during library sync. 2026-08-26 03:00:47 +02:00
Jos Vooges | STH
9168a159f7 Make full scans local-only then sync; log RESCAN and per-root progress. 2026-08-26 02:46:12 +02:00
Jos Vooges | STH
49d2f8a186 Abort in-progress scans when roots change and sync shelves after full scan. 2026-08-26 02:39:38 +02:00
Jos Vooges | STH
71c0244dd9 Show shelf paths in settings and force rescan after path changes. 2026-08-26 02:18:19 +02:00
Jos Vooges | STH
8200b908e1 Prefer longest scan root for shelf assignment and refresh Stremio shelf manifests. 2026-08-26 02:05:13 +02:00
Jos Vooges | STH
788cfa1255 Add manual TMDB/IMDb rematch for movies and series in admin. 2026-08-26 01:56:29 +02:00
Jos Vooges | STH
887f750f92 Repair Cinemeta/IMDb linking after path migration and harden library sync. 2026-08-25 22:02:54 +02:00
Jos Vooges | STH
68440f4081 Wait for full scan to finish before library sync to avoid Master pruning. 2026-08-25 21:50:35 +02:00
Jos Vooges | STH
a0a6430f39 Allow media-node container to use docker.sock via supplementary group. 2026-08-25 21:46:39 +02:00
Jos Vooges | STH
21d0d7868e Serialize library sync to prevent Prisma connection pool exhaustion. 2026-08-25 21:30:48 +02:00
Jos Vooges | STH
38b73f1894 Fix unused variable breaking media-node Go build in Docker. 2026-08-25 21:17:53 +02:00
Jos Vooges | STH
a4dfb1b472 Add admin-managed node scan paths, restart, and shared library shelves.
Shelves (e.g. Kids Films) are defined in settings; node roots bind paths to shelves so the same Stremio catalog aggregates content across nodes.
2026-08-25 20:47:41 +02:00
Jos Vooges | STH
002472e235 Mark IPTV live streams notWebReady and prefer MPEG-TS for XUI playback.
Stremio requires notWebReady for non-MP4 so the local streaming server follows XUI redirects; HLS auth often hangs while TS works.
2026-08-25 17:05:51 +02:00
Jos Vooges | STH
2df8a6a83c Use XUI /play/token stream URLs from m3u playlist for live TV.
Classic /live/user/pass/id hangs on real live channels on XUI 1.5; created_live (24/7) still worked, which matched the reported symptom.
2026-08-25 16:46:55 +02:00
Jos Vooges | STH
b9900e1c3a Fix direct IPTV playback: drop notWebReady and encode Xtream credentials in URLs. 2026-08-25 16:42:14 +02:00
Jos Vooges | STH
9b7e26041e Add Xtream IPTV per addon token with Live TV, EPG, and icons. 2026-08-25 16:32:45 +02:00
Jos Vooges | STH
b78f7af24f Improve Stremio logos and enrich movie/series meta from TMDB.
Prefer Metahub/medium logos, add cast, directors, rating, trailers and related fields.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 14:23:42 +02:00
Jos Vooges | STH
1da247d2fb Backfill series IMDb IDs and resolve Cinemeta tt:S:E streams locally.
Catalog/meta stay on mcseries; tt is streams-only so episode lists stay intact.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 11:48:46 +02:00
Jos Vooges | STH
fc842aa145 Process all pending movies in IMDb backfill instead of capping at 200.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 11:41:56 +02:00
Jos Vooges | STH
a9df10ed7c Fix TypeScript null check in movie stream consolidate.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 11:37:06 +02:00
Jos Vooges | STH
5e11811dea Backfill movie IMDb IDs so Cinemeta detail pages resolve local streams.
Admin button + startup job; log tt stream misses without touching series meta.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 11:35:30 +02:00
Jos Vooges | STH
82bf5f5844 Restore movie streams via IMDb IDs while keeping series on private IDs.
Claim tt for streams only, store movie imdb from TMDB, consolidate duplicate movie rows.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 11:24:02 +02:00
Jos Vooges | STH
38bd4a822e Fix series showing only S01E01: consolidate duplicate series and list from files.
Merge title/TMDB siblings on meta open, drop defaultVideoId, show episode file counts in admin.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 05:22:09 +02:00
Jos Vooges | STH
8b3ef15dc9 Fix TypeScript null check in series episode loader.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 05:13:19 +02:00
Jos Vooges | STH
1c76b0cd32 Fix series episode list: private IDs, unique released, dual episode lookup.
Bump addon to 1.4.0 so Stremio refreshes catalog away from IMDb/Cinemeta merges.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 05:11:58 +02:00
Jos Vooges | STH
0ebaaa1d99 Stop using IMDb IDs for library series so Stremio no longer merges with Cinemeta.
Always use mcseries-{uuid}, load all episodes with files, unique released dates per episode.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 05:08:38 +02:00
Jos Vooges | STH
6974ac39e8 Fix Stremio series episodes per addon SDK: require Video.released, safer IDs, wildcard meta routes.
Stremio drops videos without ISO-8601 released; also prefer IMDb IDs and mcseries- ids without extra colons.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 05:03:24 +02:00
Jos Vooges | STH
189448ebdb Decouple series episode listing from logo/still columns so meta cannot go empty again.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:57:55 +02:00
Jos Vooges | STH
a0785962ab Add series clearlogo and restore episode thumbnails safely on seasons meta path.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:53:45 +02:00
Jos Vooges | STH
1f180476d1 Restore series meta via seasons path; keep TMDB enrich off the critical path.
Series listing broke after switching to series.episodes and selecting stillUrl — revert to the pre-TMDB catalog-aligned query.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:50:46 +02:00
Jos Vooges | STH
6a2dc108de Fix TypeScript where-clause type that broke master-api Docker build.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:45:40 +02:00
Jos Vooges | STH
f6482be692 Hardening series meta: survive missing still_url and empty available flags.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:44:18 +02:00
Jos Vooges | STH
52e2be7296 Fix empty series episodes: never block Stremio meta on TMDB enrich or bad air dates.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:33:21 +02:00
Jos Vooges | STH
9c3fd94f03 Make scan settings default without Unraid env and editable per node in admin.
Legacy 6h configs migrate to watch + nightly 03:30; master pushes schedule via HELLO_ACK/CONFIG_UPDATE.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:27:12 +02:00
Jos Vooges | STH
f113a1ad8c Watch-first library updates with nightly 03:30 catch-up, plus TMDB episode titles and thumbnails.
Realtime fsnotify handles add/remove; optional interval scans default off; Stremio series meta now enriches episodes from TMDB (name, still, air date).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 04:21:35 +02:00
Jos Vooges | STH
f24b3f1409 Fix Stremio catalog pagination and reduce duplicate movie/series rows.
Catalogs now support skip so Stremio can load more than 100 titles; matching prefers TMDB and can merge orphans; admin can dedupe and see available vs scanned counts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 03:55:27 +02:00
Jos Vooges | STH
b5236188c6 Add admin control to list/disable/delete addons and permanently remove nodes.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 03:33:49 +02:00
Jos Vooges | STH
cc7b7c8505 Fetch TMDB metadata in Dutch and improve Stremio stream labels.
Show quality (1080p/4K) as the stream badge with codec and filename details underneath.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 03:25:38 +02:00
Jos Vooges | STH
196e78d1f0 Stop HELLO from overwriting node publicStreamUrl.
Admin can fix URL typos without recreating the Unraid container env.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 03:04:29 +02:00
Jos Vooges | STH
dcc10fc7d3 Allow editing node publicStreamUrl in admin.
Helps fix typos like node01 vs node1 without re-enrolling.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 03:02:16 +02:00
Jos Vooges | STH
974b3124d0 Fail closed on missing playback ACK; log node /play hits for diagnosis.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:47:41 +02:00
Jos Vooges | STH
2aac72cd71 Revert stream proxy: Stremio plays directly from the media node.
Master only creates the playback session and returns the node URL.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:45:16 +02:00
Jos Vooges | STH
97de6439b5 Proxy Stremio playback through Master to avoid node hairpin NAT.
Clients only talk to master.vonas.nl; Master fetches the node stream server-side and pipes Range responses.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:44:30 +02:00
Jos Vooges | STH
6f78f13af5 Serve direct node stream URLs; ACK library sync without blocking WS.
Stremio was hanging on Master 307 redirects. Sessions are created in stream.json with the node play URL. Full sync ACKs immediately so playback stays responsive.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:40:50 +02:00
Jos Vooges | STH
181ab0b7f6 Fix Fastify 5 redirect signature for playback.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 02:36:24 +02:00