Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reader interface major performance issues with large epub files #235

Closed
gammabowl opened this issue Feb 2, 2021 · 5 comments
Closed

Reader interface major performance issues with large epub files #235

gammabowl opened this issue Feb 2, 2021 · 5 comments
Labels
wontfix This will not be worked on

Comments

@gammabowl
Copy link

Steps to reproduce:

  • Open a book which is more than 1MB and the ebook reader performance drops drastically.

    • clicking on pages takes few seconds to reflect
    • search takes more than 10 seconds to respond - clicking on a search result just hangs in with a white screen.
    • flipping through pages takes lot of time, for a user it seems like the reader is not responding/stuck.
  • The ebook reader interface becomes unusable/useless if its a large epub. We didn't have issues like this for smaller sized epubs.

Unfortunately I cannot share the epub as its a paid ebook on the platform where we provide books for reading after purchase.

Example epubs which has this issue:

  • Size 1.6 MB to 1.8MB
  • Epub created with Sigil
  • Language: Kannada, English

Please let us know if anyone has any suggestions or faced similar issues ?

@mickael-menu
Copy link
Member

Hi @gammabowl, would you mind answering the following questions:

  • Which version of Readium are you using?
  • Are the EPUBs protected with a DRM? If yes, which one?
  • Can you reproduce the problem on r2-testapp-kotlin or only your app?
  • Could you paste the results of running this command on one of the problematic EPUB? unzip -v file.epub

flipping through pages takes lot of time, for a user it seems like the reader is not responding/stuck.

  • Is it the case when flipping pages in a single chapter, or when flipping pages across chapters? And would you say that the page takes time to render, or the overall interface/animation is laggy?

Would you reconsider sharing the ebook with me privately if I delete it after testing? You can find my email address on my profile.

@gammabowl
Copy link
Author

Will send the other details with the epub to your email address. thanks @mickael-menu

@mickael-menu
Copy link
Member

@gammabowl Did you send the EPUB to my email address? I didn't receive it.

@gammabowl
Copy link
Author

gammabowl commented Feb 10, 2021

@gammabowl Did you send the EPUB to my email address? I didn't receive it.

sorry for the delay and thanks for the followup, I have emailed you the epubs to your email id.

@mickael-menu mickael-menu added the wontfix This will not be worked on label Feb 11, 2021
@mickael-menu
Copy link
Member

Thanks, I tested your EPUBs on a Pixel 3a, you can see the recording here: https://youtu.be/T1pEp1Ey-1g

Here are a few notes:

  • Pages are rendered quickly
  • I don't see any problem when turning pages, either swiping or tapping on the edges

However I did notice sluggishness with the taps, but only for 3/5 seconds after the page is loaded. After this, tapping toggles the app bar instantly. In the screencast you can see that for one case, I'm loading the page and wait for a few seconds before tapping, which then works properly. I'm thinking that it might be related to Readium CSS's pagination module, because if I enable the scroll mode, taps work right away after loading a page.

I'm not dismissing your report, it might be that my phone is more performant than the market average. But I'm not sure what can be done to improve this in the Kotlin codebase directly. I've experienced similar sluggishness for a few seconds after rendering a chapter in Thorium which uses the same pagination method. We had a similar issue with Cyrillic fonts a few months ago too, which might be related: #167.

Also the size of the EPUB should not matter for rendering performances. But it could be that your 1MB+ EPUBs have longer chapters taking more time to paginate.

So for now I will close this issue, but I'll make sure to talk about this problem during the next Wednesday developper meeting to see how (and where) we can move forward with this.

@mickael-menu mickael-menu transferred this issue from readium/r2-testapp-kotlin Jul 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

2 participants