Audio rows take Width/Height from the embedded cover art #7
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
2 241
Audiorows recordWidth/Heightof1000x1000— the dimensions ofthe embedded cover-art stream — as the track's own. Upstream records none.
The attached picture is being read as if it were the item's video geometry.
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.Fixed in
28efb22.The dimensions came from the first stream carrying any, and a picture inside a
file is a video stream as ffprobe reads it. On the real library 3721 of 4889
tracks were given a resolution (the issue said 2241 — the real figure is
higher) where upstream writes zero for every one.
Review found
is_audiowas the wrong knob. Upstream takes the stream itclassified as a video (
FFProbeVideoInfo.cs:263), and our own normalizeralready reads every video stream of a track as an embedded picture. Keying on
the stream type fixes the track case and a second one the issue did not name: a
film whose cover sits ahead of its picture was taking the cover's size, and a
subtitle reporting a size of its own could have answered too. No parameter
needed.
That case is latent in this library — 0 of 8188 films and episodes differ — but
4356 of its subtitle streams do carry dimensions, so it was one stream ordering
away from being wrong.