pub fn begin_video_play_session() -> (String, Option<String>)Expand description
Claim a transcode identity for a stream about to be opened, returning the new
PlaySessionId and the one it replaces (if any).
Jellyfin keys a transcode job by device and play session. Without a session
id every open of the same item on this device looked like the same job, so
re-opening a stream — a quality switch, a transcoded seek, an audio-track
switch — left the old ffmpeg running and the server intermittently rejected
segment requests for the new one (400 on hls1/main/0.ts) while the two
fought over one transcode path. The caller stops the returned previous
session before the new stream’s segments are fetched.
TRACES: UR-074 | DR-177 | UT-173