Episode Name is the raw filename stem, release tags included #3

Closed
opened 2026-08-02 14:27:20 +02:00 by Claude · 1 comment
Collaborator

7 899 of 7 904 episodes have a Name that is the filename stem verbatim:

upstream  11.22.63
ours      11.22.63 (2016) - S01E01 - The Rabbit Hole [Bluray-1080p][x265][DTS 5.1]-MarkII

SortName and CleanName follow it. Whatever the right answer is, a display
name carrying [Bluray-1080p][x265][DTS 5.1]-MarkII is not it.

Upstream with no metadata provider names an episode from the parsed series
portion of the filename; the episode title itself comes from a provider, which
this server does not have.


Found by scanning /mnt/media (285 movies, 289 shows, 74 music artists —
~13 000 media files on a CIFS mount) with both this server and upstream
Jellyfin at the pinned commit, remote metadata and image fetchers disabled on
upstream so both were reading files only. Upstream was given the same mount
path so MD5(UTF-16LE(path)) agrees and rows compare directly.

7 899 of 7 904 episodes have a `Name` that is the filename stem verbatim: upstream 11.22.63 ours 11.22.63 (2016) - S01E01 - The Rabbit Hole [Bluray-1080p][x265][DTS 5.1]-MarkII `SortName` and `CleanName` follow it. Whatever the right answer is, a display name carrying `[Bluray-1080p][x265][DTS 5.1]-MarkII` is not it. Upstream with no metadata provider names an episode from the parsed series portion of the filename; the episode title itself comes from a provider, which this server does not have. --- Found by scanning `/mnt/media` (285 movies, 289 shows, 74 music artists — ~13 000 media files on a CIFS mount) with both this server and upstream Jellyfin at the pinned commit, remote metadata and image fetchers disabled on upstream so both were reading files only. Upstream was given the same mount path so `MD5(UTF-16LE(path))` agrees and rows compare directly.
Author
Collaborator

Fixed in 598c035, merged as the branch fix/3-episode-name.

An episode is now read through the video resolver a film goes through, so the
year and the release tags come off. The name left is the series' as that file
spells it — which is not always how the folder spells it, and upstream keeps the
file's.

Against the real library: 7899 of 7904 names agree with upstream, up from 5.

Review found two more in the same function, both fixed here:

  • the year came from the episode parser, which only fills one for a by-date
    name — it agreed with upstream on 0 of 7904, and now on 7899
  • an extra beside an episode was written as an episode of its own, and counted
    towards whether the real one was among siblings

The five names still differing are files upstream resolved one at a time rather
than as a folder, which leaves the name uncleaned (IsInMixedFolder = 0 on
exactly those five). That is not the name-cleaning divergence in #8 — our
CLEAN_STRINGS is byte-identical to upstream's.

Fixed in `598c035`, merged as the branch `fix/3-episode-name`. An episode is now read through the video resolver a film goes through, so the year and the release tags come off. The name left is the series' as that file spells it — which is not always how the folder spells it, and upstream keeps the file's. Against the real library: **7899 of 7904 names agree with upstream**, up from 5. Review found two more in the same function, both fixed here: - the year came from the episode parser, which only fills one for a by-date name — it agreed with upstream on **0 of 7904**, and now on 7899 - an extra beside an episode was written as an episode of its own, and counted towards whether the real one was among siblings The five names still differing are files upstream resolved one at a time rather than as a folder, which leaves the name uncleaned (`IsInMixedFolder = 0` on exactly those five). That is not the name-cleaning divergence in #8 — our `CLEAN_STRINGS` is byte-identical to upstream's.
Sign in to join this conversation.
No description provided.