yammes08 and GitHub
4a76016015
fix(jellycompat): tolerate item-id mediaSourceId on direct-play streams ( #313 )
...
Native clients that call PlaybackInfo, reuse the returned PlaySessionId on the
/Videos/{id}/stream?static=true request, but send the *item* id as mediaSourceId
(per the Jellyfin MediaSource.Id == Item.Id convention) rather than Silo's
fileID-based source id got a 400 "Media source is required" and could not
direct-play at all.
The PlaySessionId branch of resolvePlaybackRoute returned findMediaSource's nil
result directly, with no fallback -- unlike the FindByRoute and
createStaticPlaySession paths. Because resolution returned a nil error,
HandleVideoStream's Static fallback never fired either, so every direct-play
request 400'd.
Fall back to the session's primary source only when mediaSourceId is empty or
equals the route item id (the MediaSource.Id == Item.Id convention), matching
Jellyfin's StreamingHelpers. Any other unmatched id -- a stale/foreign id, or a
wrong version on a multi-version item -- stays rejected so it can't silently
stream the wrong file. Exact source-id matches are unchanged.
2026-07-07 09:29:18 -04:00
..
2026-06-07 17:19:40 -04:00
2026-06-10 14:58:54 -04:00
2026-07-02 14:23:14 -04:00
2026-07-01 09:06:24 -04:00
2026-06-10 19:25:07 -04:00
2026-06-08 14:25:10 -04:00
2026-06-26 12:27:37 -04:00
2026-06-21 16:20:04 -04:00
2026-07-02 14:23:14 -04:00
2026-07-05 02:01:30 -04:00
2026-07-05 02:01:30 -04:00
2026-07-05 02:01:30 -04:00
2026-07-02 14:23:14 -04:00
2026-07-02 14:23:14 -04:00
2026-06-18 10:20:48 -04:00
2026-07-05 02:01:30 -04:00
2026-07-06 18:52:44 -04:00
2026-07-05 02:01:30 -04:00
2026-06-17 13:12:18 -04:00
2026-06-17 13:12:18 -04:00
2026-06-17 13:12:18 -04:00
2026-06-09 21:09:47 -04:00
2026-06-16 17:51:00 -04:00
2026-05-22 23:26:56 -04:00
2026-06-10 19:25:07 -04:00
2026-05-25 19:37:25 -07:00
2026-05-25 19:37:25 -07:00
2026-06-16 17:51:00 -04:00
2026-06-18 10:20:48 -04:00
2026-07-01 09:05:41 -04:00
2026-06-08 22:36:07 -04:00
2026-06-08 22:36:07 -04:00
2026-06-09 19:16:28 -04:00
2026-06-18 10:20:48 -04:00
2026-07-01 09:06:24 -04:00
2026-07-05 02:01:30 -04:00
2026-07-06 18:52:44 -04:00
2026-06-16 17:51:00 -04:00
2026-06-16 17:51:00 -04:00
2026-05-22 23:26:56 -04:00
2026-07-01 09:05:41 -04:00
2026-07-02 14:23:14 -04:00
2026-05-22 23:26:56 -04:00
2026-06-16 17:51:00 -04:00
2026-06-15 09:34:08 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-06-15 18:10:40 -04:00
2026-06-08 21:05:33 -04:00
2026-06-15 15:34:13 -04:00
2026-06-15 15:34:13 -04:00
2026-05-22 23:26:56 -04:00
2026-06-08 22:36:22 -04:00
2026-06-08 22:36:22 -04:00
2026-06-08 22:36:22 -04:00
2026-06-08 22:36:22 -04:00
2026-05-22 23:26:56 -04:00
2026-06-15 18:18:10 -04:00
2026-06-15 18:18:10 -04:00
2026-07-05 02:01:30 -04:00
2026-07-01 09:06:24 -04:00
2026-06-21 16:20:04 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-05-26 22:29:49 -04:00
2026-06-08 21:05:33 -04:00
2026-06-07 11:10:15 -04:00
2026-06-18 19:17:22 -04:00
2026-07-06 18:52:44 -04:00
2026-05-22 23:26:56 -04:00
2026-07-01 09:06:24 -04:00
2026-06-09 21:09:47 -04:00
2026-07-02 14:23:14 -04:00
2026-07-02 14:23:14 -04:00
2026-07-02 14:23:14 -04:00
2026-07-02 14:23:14 -04:00
2026-07-02 14:23:14 -04:00
2026-07-07 09:29:18 -04:00
2026-05-26 17:57:26 -04:00
2026-06-18 10:20:48 -04:00
2026-07-05 02:01:30 -04:00
2026-05-22 23:26:56 -04:00
2026-06-08 21:05:33 -04:00
2026-06-27 22:02:54 -04:00
2026-07-04 23:43:19 -04:00
2026-07-04 23:43:19 -04:00
2026-07-02 14:23:14 -04:00
2026-07-05 02:01:30 -04:00
2026-06-15 09:34:08 -04:00
2026-07-06 18:52:44 -04:00
2026-05-22 23:26:56 -04:00
2026-07-01 09:05:41 -04:00
2026-07-01 09:05:41 -04:00
2026-06-18 19:17:22 -04:00
2026-07-02 14:23:14 -04:00
2026-06-08 15:25:48 -04:00
2026-05-22 23:26:56 -04:00
2026-05-22 23:26:56 -04:00
2026-06-07 11:10:15 -04:00
2026-06-16 18:30:16 -04:00
2026-06-16 11:14:14 -04:00
2026-07-02 14:23:14 -04:00
2026-07-07 09:29:18 -04:00
2026-06-26 12:26:27 -04:00
2026-06-09 20:42:46 -04:00
2026-07-06 18:52:44 -04:00
2026-05-22 23:26:56 -04:00
2026-06-18 19:17:22 -04:00
2026-07-05 02:01:30 -04:00
2026-05-22 23:26:56 -04:00
2026-06-09 16:59:55 -04:00
2026-06-15 09:34:08 -04:00
2026-06-15 09:34:08 -04:00
2026-06-15 09:34:08 -04:00