[PR #10710] [MERGED] Use eof_action=pass when overlaying subtitles #12408

Closed
opened 2025-12-22 09:17:20 +01:00 by backuprepo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/jellyfin/jellyfin/pull/10710
Author: @jkhsjdhjs
Created: 12/12/2023
Status: Merged
Merged: 12/13/2023
Merged by: @cvium

Base: masterHead: fix/subtitle_overlay_eof_action


📝 Commits (1)

  • 547d97d Use eof_action=pass when overlaying subtitles

📊 Changes

1 file changed (+13 additions, -13 deletions)

View changed files

📝 MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs (+13 -13)

📄 Description

The previous behavior using eof_action=endall and shortest=1 would end the video stream if one of the input stream (video, subtitle) ends. In some cases the duration of the overlayed subtitles is shorter than the video stream, causing the output to end when the subtitles end and dropping the remaining video stream.

This commit changes this behavior so eof_action=pass is used instead, which continues passing the video stream through even if the subtitles end earlier [1]. shortest=1 is also removed, as this option implies eof_action=endall.

If the subtitle stream has a higher duration than the video stream, the output will also end with the video stream without shortest=1, as the video stream is the primary input to the overlay filter.

Fix #10698

[1] https://ffmpeg.org/ffmpeg-filters.html#Options-for-filters-with-several-inputs-_0028framesync_0029


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/jellyfin/jellyfin/pull/10710 **Author:** [@jkhsjdhjs](https://github.com/jkhsjdhjs) **Created:** 12/12/2023 **Status:** ✅ Merged **Merged:** 12/13/2023 **Merged by:** [@cvium](https://github.com/cvium) **Base:** `master` ← **Head:** `fix/subtitle_overlay_eof_action` --- ### 📝 Commits (1) - [`547d97d`](https://github.com/jellyfin/jellyfin/commit/547d97d6023d9e07c70c8872ba27f31ee8c4e1c4) Use `eof_action=pass` when overlaying subtitles ### 📊 Changes **1 file changed** (+13 additions, -13 deletions) <details> <summary>View changed files</summary> 📝 `MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs` (+13 -13) </details> ### 📄 Description The previous behavior using `eof_action=endall` and `shortest=1` would end the video stream if one of the input stream (video, subtitle) ends. In some cases the duration of the overlayed subtitles is shorter than the video stream, causing the output to end when the subtitles end and dropping the remaining video stream. This commit changes this behavior so `eof_action=pass` is used instead, which continues passing the video stream through even if the subtitles end earlier [1]. `shortest=1` is also removed, as this option implies `eof_action=endall`. If the subtitle stream has a higher duration than the video stream, the output will also end with the video stream without `shortest=1`, as the video stream is the primary input to the `overlay` filter. Fix #10698 [1] https://ffmpeg.org/ffmpeg-filters.html#Options-for-filters-with-several-inputs-_0028framesync_0029 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
backuprepo 2025-12-22 09:17:20 +01:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: starred/jellyfin#12408
No description provided.