Skip to content

SSA and SubRip in-progress cue is not rendered when subtitle track is selected after cue's start time #2309

@leesangyoon93

Description

@leesangyoon93

When selecting a subtitle track after playback has passed the cue’s start time, and the subtitle file contains only one cue, no subtitle is rendered.

However, if the subtitle file has two or more cues, the same behavior works correctly — the cue that overlaps with current playback time is displayed as expected.

Expected behavior

Even if a subtitle file contains only one cue, and the track is selected after the cue’s start time but before its end time, the cue should be rendered if it's currently active.

Steps to reproduce

  1. Create a .vtt file with only one cue:
1
00:00:00,000 --> 00:00:10,000
Hello world!
  1. Start playback and seek to 5 seconds (after the cue's start time).
  2. Select the subtitle track at 5 seconds.
  3. Observe that no subtitles are shown.
  4. Check onCues(List) — it is triggered but receives an empty list.

Root Cause Hypothesis

ExoPlayer’s internal logic likely relies on multiple cues to construct a timeline for cue scheduling.

When only one cue exists, and the current playback position is past its start time, there’s no scheduling opportunity, so the cue is skipped.

This results in onCues() being called with an empty list, even though the cue should be active.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions