mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-05-30 23:40:40 +02:00
[Bug]: Timing in web player is way off #2279
Closed
opened 2026-04-25 00:05:43 +02:00 by adam
·
5 comments
No Branch/Tag Specified
master
book_tags_genres_dedupe
episode_download_fallback
Issue-4540-SortBy-StartedDate-and-FinishedDate
episode_meta_tagging
fix_authorize_race_condition
redirect_transcode_requests
progress_updated_sort
fix_ereader_socket_event
fix_change_empty_root_password
fix_podcast_session_track_index
fix_set_token
session_modal_user
localize_durations
fix_oidc_create_user
jwt_auth_refactor
fix_scanner_deleting_single_file_books
fix_mediaprogress_updatedat_2
experimental_next_client
podcast_episode_duration
episode-timestamps-clickable
book_author_secondary_sort_title
podcast_useragents
pathexists_user_access
fix_pathexists_join
book_author_secondary_sort
clean_duplicate_mediaprogress
sanitize_html_description
trix_prevent_attachments
check_path_api_fix
fix_mediaprogress_updatedat
increase_express_json_limit
fix_dockerfile_nunicode
search_episodes
audiobook_tools_update
episode_secondary_sorts
hls_stream_url_update
new_session_track_endpoint
audiobook_tools_enhancements
watcher_rescans_update
player_track_tooltip
fix_exclude_prefixes_crash
socket_item_events
fix_podcast_episode_scanner_promise
new_stats_controller
count_cache_for_userpermissions
parsing-opf-v3
validate_migration_files
fix-quick-match-all-crash
fix-chapter-end-sleep-timer
stringify_sequelize_query
remove-col-ambiguity
fix_next_prev_edit_description
details_trim_whitespace
fix_content_url_basepath
fix_logger_fatal
progress_bar_visibility
batch-edit-populate-map-details
feed_generator_updates
bookmark-modal-updates
migrate-library-item-in-scanner
migrate-new-library-items
migrate-podcasts-new-library-item-2
migrate-podcasts-new-library-item
fix-remove-episode-from-playlist
playback-session-use-new-library-item
refactor-library-item
fix-heatmap-caption
feed-episodes-upsert
share-media-player-media-session-api
remove-old-playlist
remove_old_collection_object
plugin-implementation-demo
feed_migration
refactor-feeds-from-item
fix_remove_authors_no_books
v2.17.3-fk-constraints-migration
migrations-first-upgrade
sqlite_2
feature/nuxt-target-server
waveform
sqlite
playlists
video
v2.35.1
v2.35.0
v2.34.0
v2.33.2
v2.33.1
v2.33.0
v2.32.1
v2.32.0
v2.31.0
v2.30.0
v2.29.0
v2.28.0
v2.27.0
v2.26.3
v2.26.2
v2.26.1
v2.26.0
v2.25.1
v2.25.0
v2.24.0
v2.23.0
v2.22.0
v2.21.0
v2.20.0
v2.19.5
v2.19.4
v2.19.3
v2.19.2
v2.19.1
v2.19.0
v2.18.1
v2.18.0
v2.17.7
v2.17.6
v2.17.5
v2.17.4
v2.17.3
v2.17.2
v2.17.1
v2.17.0
v2.16.2
v2.16.1
v2.16.0
v2.15.1
v2.15.0
v2.14.0
v2.13.4
v2.13.3
v2.13.2
v2.13.1
v2.13.0
v2.12.3
v2.12.2
v2.12.1
v2.12.0
v2.11.0
v2.10.1
v2.10.0
v2.9.0
v2.8.1
v2.8.0
v2.7.2
v2.7.1
v2.7.0
v2.6.0
v2.5.0
v2.4.4
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.3.5
v2.3.4
v2.3.3
v2.3.2
v2.3.1
v2.3.0
v2.2.23
v2.2.22
v2.2.21
v2.2.20
v2.2.19
v2.2.18
v2.2.17
v2.2.16
v2.2.15
v2.2.14
v2.2.13
v2.2.12
v2.2.11
v2.2.10
v2.2.9
v2.2.8
v2.2.7
v2.2.6
v2.2.5
v2.2.4
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.5
v2.1.4
v2.1.3
v2.1.2
v2.1.1
v2.1.0
v2.0.24
v2.0.23
v2.0.22
v2.0.21
v2.0.20
v2.0.19
v2.0.18
v2.0.17
v2.0.16
v2.0.15
v2.0.14
v2.0.13
v2.0.12
v2.0.11
v2.0.10
v2.0.9
v2.0.8
v2.0.7
v2.0.6
v2.0.5
v2.0.4
v2.0.3
v2.0.2
v2.0.1
v1.7.2
v1.7.1
v1.7.0
v1.6.0
v1.5.5
v1.5.0
v1.4.11
v1.4.9
v1.4.7
v1.4.6
v1.4.4
v1.4.2
v1.4.0
v1.4.1
v1.3.4
v1.3.3
v1.3.1
v1.2.8
v1.2.6
v1.2.5
v1.2.4
v1.2.1
v1.1.15
v1.1.14
v1.1.13
v1.1.12
v1.1.11
v1.1.10
v1.1.9
v1.1.8
v1.0.0
0.9.61-beta.0
0.9.61-beta
Labels
Clear labels
authentication
backlog
bug
chapter editor
config-issue
ebooks
encoding/embedding
enhancement
help wanted
listening sessions & progress
planned
possible plugin
progress sync
pull-request
sorting/filtering/searching
unable to reproduce
upload
users & permissions
waiting
Mirrored from GitHub Pull Request
No Label
bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
Assignees
adam (Adam Melkus)
Clear assignees
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/audiobookshelf#2279
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
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?
Originally created by @Fieldmouse88 on GitHub (Sep 28, 2024).
What happened?
When I switched from my iphone app to the web player, it continued at the same time code, but the audio was not at the same place in time.

Further investigation and looking at a single chapter, the text says both are the same length, but if i go to say 15m on phone app, windows media player and the audibooks web player, the phone and windows media player will be synced, but the web player will be waay off.
Instead, these to 2 timecodes play the same audio.
Im only using windows media player here for trouble shooting.
What did you expect to happen?
I would expect the same time code on all 3 players to play the same audio.

But they dont.
Steps to reproduce the issue
Simply try playing it at some random time code on the web player and then on the iphone or probably any other player. The audio will not be synced what so ever.
Audiobookshelf version
v2.13.4
How are you running audiobookshelf?
Debian/PPA
What OS is your Audiobookshelf server hosted from?
Linux
If the issue is being seen in the UI, what browsers are you seeing the problem on?
Chrome
Logs
No response
Additional Notes
No response
@advplyr commented on GitHub (Sep 28, 2024):
Is this an m4b or an mp3 file?
You'll have to provide the file, there is not enough info to make any guesses.
@Fieldmouse88 commented on GitHub (Sep 28, 2024):
Its an MP3, heres the file, not the entire book but the chapter I happened to be on an experimented with.
https://www.dropbox.com/scl/fi/gcskatwxxre351yh9nwqd/19-Prey.mp3?rlkey=3ceg7layy0ofsr3vzbp8hnbx5&st=7z396cl2&dl=0
Let me know if there is anything else I can provide that would be helpful!
@advplyr commented on GitHub (Sep 28, 2024):
The issue is that the audio file is encoded with Variable Bit Rate (VBR). It is recommended to use Constant Bit Rate (CBR).
Seeking isn't going to work properly with VBR mp3s. Some audio players like VLC media player will do a better job at it but the built-in browser audio player isn't going to do well.
On the android app a setting was added to enable index seeking but I don't think it works well either and it slows down playback. It is explained here https://developer.android.com/media/media3/exoplayer/troubleshooting#why-is-seeking-inaccurate-in-some-mp3-files
https://github.com/advplyr/audiobookshelf-app/issues/638
I would suggest re-encoding any VBR mp3 files you have. I was able to fix that file you sent with this ffmpeg command.
@Fieldmouse88 commented on GitHub (Oct 1, 2024):
Oh I see! Thank you for the quick response. While I know do understand the underlying issue with VBR, wouldnt it make for ALOT better solution if seeking was done with the same method on all platform players? I mean it doesnt really matter if the timing is off from the actual time stamp, all that matters is that its the same on all devices using audiobookshelf.
Re-encoding isnt really an option for me, and I imagine that applies to most users.
I would still call this a bug, even though there is a technical explanation for it, from a user perspective its not expected behaviour. And it seems to me like it would be resolved if seeking was done using the same method on all devices.
But hey, its still great, free and Im so glad it exists! Thankful to you advplyr, who I assume is the creator, and everyone else who has contributed in some way! =)
@advplyr commented on GitHub (Oct 1, 2024):
What do you mean seeking is done the same? When playing audio in the browser you have to use the browsers audio player. That audio player isn't going to be able to seek with VBR audio files. There is not really a solution as far as I can tell unless you have some more thoughts.
I'm not sure where you are getting VBR mp3 files but it is only problematic with no benefit. I'm not sure why re-encoding wouldn't be an option. If for some reason you have many of these files you can write a few line script to loop through and fix them.