jellyfin / jellyfin-web

Web Client for Jellyfin
https://jellyfin.org
GNU General Public License v2.0
2.37k stars 1.26k forks source link

Chapters that contain chapter-time positions greater than a video's playtime length results with a transparent & blank "bad chapter" image/marker being presented in the Jellyfin UI. #5712

Open maru801 opened 4 months ago

maru801 commented 4 months ago

Describe The Bug

Currently, if a chapter file includes a time that's beyond the actual length of the video, Jellyfin will log that it failed to extract the chapter images, and that it stopped the chapter extraction task. Even though it detected that the chapter is set after the video's playtime, it still presents the chapter in the episode/movie interface for chapters. It will be presented with a transparent background. Clicking on it will result with weird behavior. On episodic content, clicking on this bad chapter will skip the next episode, and start playing the one after (ex: clicking on episode 2's bad chapter will take you to episode 4).

Steps To Reproduce

  1. Use a program like MKVToolNix to create a chapter that's past a video's length.
  2. Add the video to Jellyfin and scan it into a library.
  3. Run a chapter extraction task if not set automatically at the time of a scan.
  4. When the scan & chapter task is done, navigate to the video and click on the bad chapter to see the current behavior.

Expected Behavior

Jellyfin should not produce chapter images/markers that are beyond the video's length (especially since it stops the chapter task when this type of error is found).

Logs

When an out-of-bounds chapter error is found, this is reported in the logs:

More logs are also shown with "[ERR]" tags regarding ffmpeg errors when attempting to extract the chapter images".

System (please complete the following information):

jellyfin-bot commented 2 weeks ago

This issue has gone 120 days without comment. To avoid abandoned issues, it will be closed in 21 days if there are no new comments.

If you're the original submitter of this issue, please comment confirming if this issue still affects you in the latest release or master branch, or close the issue if it has been fixed. If you're another user also affected by this bug, please comment confirming so. Either action will remove the stale label.

This bot exists to prevent issues from becoming stale and forgotten. Jellyfin is always moving forward, and bugs are often fixed as side effects of other changes. We therefore ask that bug report authors remain vigilant about their issues to ensure they are closed if fixed, or re-confirmed - perhaps with fresh logs or reproduction examples - regularly. If you have any questions you can reach us on Matrix or Social Media.

S-Bob commented 2 weeks ago

I am experiencing the same

[2024-10-15 02:00:01.087 +00:00] [INF] [166] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for "Extract Chapter Images" set to fire at 2024-10-16 02:00:00.000 +00:00, which is 23:59:58.9125101 from now. [2024-10-15 02:00:16.124 +00:00] [INF] [174] Emby.Server.Implementations.MediaEncoder.EncodingManager: Stopping chapter extraction for "The.Making.of.Pusher" because a chapter was found with a position greater than the runtime. [2024-10-15 02:00:16.125 +00:00] [INF] [174] Emby.Server.Implementations.MediaEncoder.EncodingManager: Stopping chapter extraction for "The.Making.of.Pusher.3" because a chapter was found with a position greater than the runtime. [2024-10-15 02:00:16.149 +00:00] [INF] [174] Emby.Server.Implementations.MediaEncoder.EncodingManager: Stopping chapter extraction for "The.Making.of.Pusher.2" because a chapter was found with a position greater than the runtime.