Jellyfin needs enough iGPU headroom to sustain the hardest normal mix of concurrent hardware-transcoded sessions without creating a queue.
There is no universal number of users per iGPU because codec decode, output resolution, HDR tone mapping, subtitle burn-in, frame rate, and memory bandwidth all change the load. Direct Play users consume almost no transcode capacity, while one difficult conversion can cost more than several simple ones. Build a workload mix before choosing a percentage or stream count.
Count Transcode Classes Instead of Users
A household of six users may require less graphics work than two remote users if most clients Direct Play. Capacity planning should count the playback modes and filters that actually enter the media engine.
Different Jellyfin conversion paths can produce very different throughput on the same system.
Classify expected sessions as Direct Play, simple hardware transcode, tone-mapped transcode, and subtitle burn-in. Size against the weighted mix rather than the account count.
Tone Mapping and Burn-In Consume Extra Margin
The media engine may perform more than encode and decode. HDR conversion and subtitle composition can become the stages that reduce concurrency first.
Subtitle burn-in behavior explains why a subtitle choice can force full video processing even when the underlying video codec is otherwise compatible.
Include at least one hard HDR-plus-subtitle case in the peak test if the household uses it. Otherwise the calculated headroom can disappear the first time that content plays.
Integrated Graphics Also Share System Memory Bandwidth
An iGPU does not have an isolated workstation-class memory subsystem; it competes for system memory and can be affected by channel configuration and other workloads. That makes host conditions part of the result.
Co-located applications can show resource interference when workloads overlap, so a clean transcode benchmark may overstate capacity on a busy home server.
Repeat the transcode matrix with normal companion services active. The hardware-accelerated streaming baseline should reflect the host as it will actually run, not an empty benchmark environment.
Reserve Margin Above the Measured Failure Point
High utilization is not automatically a problem if the engine keeps real-time output with stable latency, but saturation without margin makes the system fragile to one harder file. Define the point where transcode speed or playback stability degrades.
The USE method provides a clean language for utilization, saturation, and errors instead of a magic safe percentage.
Increase concurrency until the first repeatable failure, then set the operating limit below that point with enough margin for normal variability. Retest after driver, client, or major library changes.
テック&AIハブ
もっと読む

Why Jellyfin Home-Server Architecture Changes as You Add Services
A Jellyfin box becomes a service stack as more apps are added, so CPU, storage, network, secrets, backups, and recovery boundaries need explicit ownership.

How to Measure Jellyfin Performance Without Mistaking Cache for Capacity
A reliable Jellyfin benchmark labels cold and warm state separately so cached metadata or filesystem pages are not mistaken for permanent hardware capacity.

Why Jellyfin Feels Faster on Some Clients Than Others
Client capability can change both local UI behavior and the server playback path, making “Jellyfin speed” a combined client-server result.

