Plan: off-site gap filling option (home NVENC / Spot GPU) and SYS-3 availability note
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -357,6 +357,17 @@ Checklist if adopted:
|
|||||||
- [ ] per-user clips volume in `copyparty.conf` once forward-auth is live (Phase 5)
|
- [ ] per-user clips volume in `copyparty.conf` once forward-auth is live (Phase 5)
|
||||||
|
|
||||||
### Later — when it hurts
|
### Later — when it hurts
|
||||||
|
|
||||||
|
- [ ] **Off-site gap filling** (instead of burning the SYS-1's CPU): streams whose sidecar reports
|
||||||
|
`gaps.total_missing_ms` ≥ threshold are re-encoded elsewhere with a hardware encoder.
|
||||||
|
- the sweep keeps the raw recording in `.src/` and the sidecar flags it (`needs_fill: true`)
|
||||||
|
- a nightly job on the home box (RTX 2080 Ti, NVENC) or a Spot GPU instance pulls flagged raws over
|
||||||
|
SFTP, re-encodes to CFR with duplicated frames (same editing standard, `tmcd` + `creation_time`
|
||||||
|
carried from the sidecar), pushes the result back over the published file, clears the flag
|
||||||
|
- Jellyfin keeps the same path → item identity and watched state survive; the plugin re-reads metadata
|
||||||
|
- until then: `FILL_GAPS_MS` stays off; players hold frames across gaps, editors see the gap list
|
||||||
|
- [ ] **SYS-3 (E-2288G, Quick Sync)** — the 2×6 TB disk option is currently unavailable; re-check and swap when
|
||||||
|
it returns. Then: Jellyfin transcoding on, sweep re-encodes in minutes, `FILL_GAPS_MS` can simply be on.
|
||||||
- [ ] **SYS-3 (E-2288G)**: Quick Sync → Jellyfin transcoding on, sweep re-encodes in minutes.
|
- [ ] **SYS-3 (E-2288G)**: Quick Sync → Jellyfin transcoding on, sweep re-encodes in minutes.
|
||||||
Swap, not redesign: same compose, same `/srv` layout; restore `/srv/appdata` + `/srv/media`.
|
Swap, not redesign: same compose, same `/srv` layout; restore `/srv/appdata` + `/srv/media`.
|
||||||
- [ ] home archive puller (`home/rclone-archive.sh`) on the home box, nightly cron
|
- [ ] home archive puller (`home/rclone-archive.sh`) on the home box, nightly cron
|
||||||
|
|||||||
@@ -330,6 +330,8 @@ Turn it on (threshold 1 s) / off, on the server:
|
|||||||
|
|
||||||
Check: `systemctl show normalize-sweep -p Environment`. Takes effect on the next sweep run; already-published
|
Check: `systemctl show normalize-sweep -p Environment`. Takes effect on the next sweep run; already-published
|
||||||
files are not revisited. Clips are always converted to CFR regardless.
|
files are not revisited. Clips are always converted to CFR regardless.
|
||||||
|
Planned alternative: re-encode flagged streams off-site on a machine with a hardware encoder (home box NVENC or a
|
||||||
|
Spot GPU) and push the result back — see CommunityDiscordMedia.md → Later.
|
||||||
|
|
||||||
## Layout on the server
|
## Layout on the server
|
||||||
|
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ Source of truth: this repo, `techy/Media-Server-Setup` on the stack's own Gitea
|
|||||||
8. Plugin repository served by Caddy so Jellyfin updates from its catalog.
|
8. Plugin repository served by Caddy so Jellyfin updates from its catalog.
|
||||||
9. Clip submissions (belongs to the bot). Bot code from the other dev.
|
9. Clip submissions (belongs to the bot). Bot code from the other dev.
|
||||||
10. Authentik blueprint from `.env` (Discord source, groups, policies, provider) for reproducible installs.
|
10. Authentik blueprint from `.env` (Discord source, groups, policies, provider) for reproducible installs.
|
||||||
11. SYS-3 when transcoding or sweep speed hurts.
|
11. SYS-3 when transcoding or sweep speed hurts (2×6 TB option currently unavailable; watching for it). Interim option documented: off-site gap filling on the home NVENC box.
|
||||||
|
|
||||||
## Verified behaviours worth remembering
|
## Verified behaviours worth remembering
|
||||||
- **Never scp generated configs** (`mediamtx.yml`, `copyparty.conf`, `Caddyfile`, `dump-users.txt`, `.env`): a template copy wiped all streamers once. They are gitignored now; `*.example.*` are reference only.
|
- **Never scp generated configs** (`mediamtx.yml`, `copyparty.conf`, `Caddyfile`, `dump-users.txt`, `.env`): a template copy wiped all streamers once. They are gitignored now; `*.example.*` are reference only.
|
||||||
|
|||||||
Reference in New Issue
Block a user