Jellyfin¶
If you aren't allowed to own media anymore, then its impossible to steal it.
Jellyfin Setup¶
Readonly Shares and their Limitations¶
I give jellyfin read-only access to an NFS share. This has a functional caveat where you cannot store trickplay data etc. alongside media files. I've tried setting up a symlink thing where writes would get re-routed to another location but I never got anything that was working and stable. This also breaks the OnePace plugin so I have OnePace stored in my public folder that jellyfin has write access to. I also have OnePace stored in the AutoTV folder since it requires a folder set to be pure tv series instead of mixed content.
Jellyfin's Memory Problems¶
EDIT: This seems to be fixed now (10.11), for performance considerations I think I left these tweaks in, are they still relevant and good? who knows.
Lore here: https://github.com/jellyfin/jellyfin/issues/11588 https://github.com/jellyfin/jellyfin/issues/13165
You can see Jellyfin crashing because oom-killer killed it by journalctl | grep "oom-kill" Here's how I fixed it on a VM with 20GB of memory after adding a 40G swapfile
nano /etc/default/jellyfin
# comment out the MALLOC_TRIM_THRESHOLD i.e. disable it
# Tweaks
MALLOC_ARENA_MAX="2"
DOTNET_gcServer = "1"
DOTNET_GCConserveMemory = "9"
DOTNET_GCHeapHardLimitPercent = "0x5a"
DOTNET_GCHighMemPercent=48
NVIDIA_DRIVER_CAPABILITIES=all
NVIDIA_VISIBLE_DEVICES=all
General Configuration¶
- General
- Server name: ____
- Custom CSS: see below
- Parallel tasks and image encode limits: 1
- Playback
- Transcoding
- Select All
- Enable NVDEC
- Enable hardware enc
- Disable enc in HEVC or AV1
- Enable Tone Mapping BT.2390
- Transcode Thread # MAX
- Transcode Path: your_caching_drive/transcodes (make sure parent dir exists)
- Audio downmix boost: 2
- Algorithm: RFC7845
- Enc preset: fast
- Allow sub extract on the fly
- Resume
- 5, 90, 5, 5, 300
- Trickplay
- Enable
- Enable MJPEG
- Enable keyframes
- Non Blocking
- High Priority
- 10000ms interval
- Transcoding
- Plugins
- Webhook
- Generic
- Name: Jellyseerr
- URL: http://192.168.5.4:5055/api/v1/settings/jobs/jellyfin-recently-added-scan/run
- Status: Enable
- Item Added
- Request Header: Key accept, Value application/json
- Request Header: Key X-Api-Key, Value JELLYSEERR_API_KEY_HERE
- Webhook
- Networking
- Known Proxies: 0.0.0.0/0, 0.0.0.0/0 (yes, twice.)
- Branding
- Login disclaimer: Message me if there are any issues! Custom CSS:
.homePage .emby-scrollbuttons {
display: none;
}
.homePage .itemsContainer {
flex-wrap: wrap;
margin-right: -5em;
}
#indexPage, #moviesPage, #tvRecommendedPage {
background-color: rgba(0, 0, 0, 0);
background-image: https://keepalive.proxius.net/background.jpg;
background-size: cover;
}
Library Setup¶
- Animated
- Anime
- Cartoons
- Movies
- Television
- ┃AutoAnime┃
- ┃AutoMovies┃
- ┃AutoTV┃
- Collections - created automatically when you begin creating collections.
-> ┃ <- Special character that doesn't piss Jellyfin off to use on "Auto" libraries so they're sorted into their own section. JF does not have library sorting beyond alphabetical atm.