Sound files end early when playback speed > 1.0. "Time elapsed" exceeds the shown length of the audio file

App version

Production

Issue description

When playing back locally-synced mp3 files on Android, if I am playing them back faster than 1.0, they usually end early. This began happening with the latest version somewhere around 8/25/2025

Device type

Phone

Media provider

Local device

Steps to reproduce

  1. Play an mp3
  2. Set the playback speed to 1.5
  3. Listen
  4. Observe the playing time exceed the listed length of the mp3
  5. Observe that the mp3 ends early

Additional information

This happens whether I’m online or offline. I sync mp3 files from my Google Drive to Symfonium on my Android phone for local playback.

I searched existing issues first

on

I understand that logs are mandatory

on

Log upload name / description

jmegna405

Test with version 15.1.0 beta 1. See changelog for download links.

I had posted about this earlier on a similar topic but will follow-up here, since this topic is more directly related.

For me, on v15.1.0B1, the player.position now reports the correct value for the current track when changing playback speeds. But there is still an issue when transitioning to the next track. Behavior is technically the same for playing fast vs slow, but only playing slow causes an actual playback issue.

Actual audio playback begins and ends correctly for me in both cases. (Though I had no issue with it cutting off in the last version either.)


Log: Celorien_Speed30

  1. When Playback Speed is greater than one (i.e. playing fast), the player.position will briefly jump backwards based on the actual time elapsed. Playback then continues to the next track without issue.

20260831_112714

Seeked directly to 2:38 before starting playback. Thus 30s remaining at 3x speed means actual elapsed time is 10s. At end of track, player.position briefly jumped to 2:47, which is consistent with the +10s elapsed time.

Next track correctly begins at 0:00.


Log: Celorien_Speed05

  1. When Playback Speed is less than one (i.e. playing slow), the player.position for the next track does not start at 0:00.

ISSUE: If the player does not reach the position of player.position within 20s (of real time elapsed), app will report “Unable to play media, make sure your device supports it” and skip to the next track.

(I can’t get the toast to show up for a screenshot but I know I’ve seen it.)

Initial player.position is based on actual elapsed time, just like above. Same track, seeked directly to 2:38 before starting playback. There are 30s remaining at 0.5x speed, so actual time elapsed is 45s.

Next track’s starting position was displayed as 0:15. (Actual audio correctly started from 0:00.) Playback is abruptly cut off and skips to the next track after an actual elapsed time of 20s.

NOTE: if the starting position is small enough to be reached (i.e. less than 0:10), playback will continue without issue.

20260831_125557

I started at 2:08 in this GIF so the numbers are different. Just showing the starting offset.

This now works perfectly for me in 15.1.0B2

Both cases work correctly. Whether playing slow or fast, the player properly completes the first track and then correctly begins at 0:00 on the next track. No “jumping back” or “starting offsets” in this new version.

Great work Tolriq!