mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-03-02 22:46:56 -05:00
[Enhancement]: Enable EPUB 3 Support in Audiobookshelf for Synced Audiobooks and Ebooks #2240
Labels
No labels
authentication
awaiting release
backlog
bug
chapter editor
config-issue
ebooks
encoding/embedding
enhancement
help wanted
listening sessions & progress
planned
possible plugin
progress sync
sorting/filtering/searching
unable to reproduce
upload
users & permissions
waiting
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/audiobookshelf#2240
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
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 @ashwinm4friends on GitHub (Jun 17, 2024).
Type of Enhancement
Server Backend
Describe the Feature/Enhancement
Audiobookshelf currently supports various audiobook and ebook formats. This feature request is to enable support for EPUB 3 files, which allows for synchronized audiobooks and ebooks within a single file. EPUB 3 is a versatile and widely adopted format that can integrate both text and audio, providing a seamless reading and listening experience.
Why would this be helpful?
Integrating EPUB 3 support in Audiobookshelf would provide several benefits:
Unified Experience: Users can enjoy a synchronized reading and listening experience without needing to switch between separate files for text and audio.
Enhanced Accessibility: EPUB 3 format supports features such as text highlighting and navigation, which can be beneficial for users with visual or reading impairments.
Improved Comprehension: Synchronized text and audio help in better comprehension and retention of information by reinforcing the content through both reading and listening.
Support for Dyslexic and Visually Impaired Users: The synchronization of audio and text can significantly aid users with dyslexia or visual impairments by allowing them to follow along with the text as they listen, improving their reading experience and accessibility.
User Convenience: This feature simplifies the process of managing and accessing audiobooks and ebooks, as users would only need to handle a single file format.
For reference, Storyteller (https://smoores.gitlab.io/storyteller/) already provides the capability to create EPUB 3 files with synchronized audio and text. By implementing EPUB 3 support, Audiobookshelf can leverage the advanced features of this format to offer a richer, more accessible, and more integrated user experience.
Future Implementation (Screenshot)
The EPUB 3 format allows for precise synchronization of audio with text, enabling features such as word-level or sentence-level highlighting. As the audio plays, the corresponding text is highlighted, providing a dynamic and engaging reading experience. Implementing this feature in Audiobookshelf will bring significant value to users by offering a more interactive and supportive reading environment.
Audiobookshelf Server Version
latest
Current Implementation (Screenshot)
No response
@advplyr commented on GitHub (Jun 17, 2024):
This reads like ChatGPT.
We have discussed this a lot #189 #1723 #601
@yourmoonlight commented on GitHub (Aug 11, 2024):
If Audiobookshelf could achieve the synchronization of ePub and audiobooks, it would be a very popular feature.
@WickedSquirrel commented on GitHub (Oct 17, 2024):
I think it's something entirely else.
It wouldn't require abb to generate anything.
In a epub3 the text and the Audiofiles are already there and synchronised. Abb would just need to support it, maybe give us a toggle to switch between reading and listening or have both at once.
@coandco commented on GitHub (Oct 24, 2024):
I too would be very interested in EPUB3 support.
@WickedSquirrel commented on GitHub (Dec 24, 2024):
@advplyr any update on this?
@nichwall commented on GitHub (Dec 25, 2024):
There has not been additional work on e-reader support since this was opened.
@kurumushi commented on GitHub (Dec 29, 2024):
For reference if this ever gets looked at, this is the epub standard being asked for:
https://www.w3.org/submissions/epub-mediaoverlays/
Referenced here as well: https://www.w3.org/TR/epub-33/#sec-media-overlays
@dabigc commented on GitHub (Jan 11, 2025):
For those that want this today, Storyteller looks like it might be a good fit (granted, I believe it's in beta). The fact that it has an API server makes me wonder if it might one day be extensible for use in ABS without ABS needing to perform the generation, etc. If EPUB 3 supports this natively, it seems like Storyteller might be good to generate the EPUB 3 files and ABS might then only need to support the standard. Just throwing this out there as I prefer ABS and am sticking with it but for those that are eager, this might be a good solution.
@coandco commented on GitHub (Jan 11, 2025):
Yes, that's the feature request for now -- just play existing synced-audio/text EPUB3 files, even if they're generated somewhere else.
@dunia01 commented on GitHub (Feb 10, 2025):
This would be great, really.
@kurumushi commented on GitHub (Feb 22, 2025):
After looking at it I think this is much more involved than everyone may think. When you play an audiobook via audiobookshelf, it just asks the browser to play the media file. So in order for this to happen, you'd need either A. Browsers themselves to support epub3 synced. Or B. an entirely custom player interface.
@dkbarn commented on GitHub (Feb 22, 2025):
There are web-based libraries & tools out there with EPUB3 "read along" functionality that could potentially be leveraged or at least used as inspiration. See for example:
@kurumushi commented on GitHub (Mar 12, 2025):
Apparently #189 also has the same request, so just referencing it here.
@Astorsoft commented on GitHub (Mar 29, 2025):
This was said above, this has nothing to do with #189, #1723 or #601. It isn't about generating a merge of an audiobook and epub like Storyteller does (and it does it great) or faking it through text to speech. This is about being able to read/listen the output of storyteller in Audiobookshelf.
Not sure what the original requester had in mind, but the feature would make more sense on the client side (ie the iOS or Android apps) rather than the server side. FYI Storyteller does have a smartphone client to play those epub3 files, but there is some appeal is centralizing everything into one app like Audiobookshelf.
@kurumushi commented on GitHub (Mar 30, 2025):
Stupid me, even though I use the mobile app, most of my comments above about web browsers doesn't apply there at all.
For reference then, it looks like the mobile clients are using epub.js, so it's probably best to see if that supports synced audiobooks, and request changes over there before anything could be done in the audio bookshelf mobile app.
@eserero commented on GitHub (Apr 3, 2025):
hmmm - interestingly I just found out that calibre ebook viewer can manage epubs that I created with storyteller, and it can do so also in the web client. it works in the desktop and my phone browser even have some limited offline capabilities. the browser reader is actually very good - very feature rich and can do quite a bit. Colibrio seems even nicer, but I think its not free. I wonder if there is a way to use the calibre reader in audiobookshelf
@Jdiesel87 commented on GitHub (May 10, 2025):
I just got around to generating a few Epub3 books using Storyteller. The process was relatively easy. It would be great to be able to play these books in ABS.
@wallaby-gopher commented on GitHub (Jun 9, 2025):
were you able to sync progress from calibre to audiobookshelf? It'd be great to have progress the same across platforms.
@xrishox commented on GitHub (Aug 19, 2025):
this would be a huge boon of a feature. it's also an obvious feature for a project that puts such a strong focus on supporting both ebooks and audio books. it wouldnt need to implement support to produce these types of books, since that is already handled by storyteller. it would just need to be able to read them.
@andersonimes commented on GitHub (Oct 26, 2025):
One stepping stone here that would be nice for users of Storyteller might be to simply have the ability to play epub3 files like audio files - effectively treating them like m4b files today. This way, we at least wouldn't have to duplicate files to support both formats.
@flboy1758 commented on GitHub (Nov 10, 2025):
I installed Storyteller and was amazed how easy it was to create audio synced epubs. I would love to be able to use audiobook shelf to consume these files instead of needing to manage two different apps.
@mattague commented on GitHub (Nov 25, 2025):
I feel like this would be a good alternative of doing the syncing in ABS is just too difficult.
@mattague commented on GitHub (Feb 13, 2026):
I don't know how relevant this still is (if ABS still uses that project), but that repo hasn't been updated in almost 6 years. I did find mention of a fork that has been worked on quite a bit:
https://github.com/intity/epub-js
@nichwall commented on GitHub (Feb 14, 2026):
Yes, this is still the library being used and we know it's out of date, but haven't found and implemented a suitable replacement yet. An updated fork might be easier to switch to.
@coandco commented on GitHub (Feb 14, 2026):
Might be worth checking out https://github.com/johnfactotum/foliate-js -- BookLore just switched to it for ebook reading and it's been good so far.
@Jdiesel87 commented on GitHub (Feb 14, 2026):
There is also Readium
https://github.com/readium