-
Notifications
You must be signed in to change notification settings - Fork 104
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
Extreme lag on heavy "move" elements in dialogue #72
Comments
Was able to improve the performance by reducing the number of times Using the base renderer still works okay, but still lags and is choppy. The I did a test in desktop chrome using the player option, rather than canvas and @JustAMan Have you seen this kind of case when using the |
Was away for quite a while... I'm not sure I've encountered Also I don't remember upstreaming here the options you're talking about, so I presume you're using our fork (https://github.com/jellyfin/JavascriptSubtitlesOctopus/). If so, what are results with render ahead mode enabled? |
@JustAMan I put in a pull-request for your repository, also upon testing render ahead I get visual discrepancies like this: from what I can tell the animations don't get rendered or get half rendered and end up getting like that. And testing even further, blend render mode keeps the subtitles around longer than needed. |
I encountered the issue with low performance and eventual running out of memory on certain intensive subs when supplying a custom canvas and calling Initially I thought it was due to the rate at which requestAnimationFrame was called (120 fps on my monitor) so I forced rAF to only be called at 10 fps. However this led to a bad viewing experience when any kind of animation was used. Looking around the code I discovered that there is an By calling the octopus instance's When |
@nopol10 That worked for me, thank you! I'm working with a lot of karaoke-style animations, and they were very choppy when I used an |
It seems that when there are
move
animations in the sub file dialog, it causes the renderer to lag heavily, and in some cases crash the worker. I was previously using version 2.2.0, but saw that there were recently some promising improvements with alternate render techniqueslossyRender
andblendRender
. After trying the latest code with different combinations of both the lossy and blend render modes, I can't seem to get the rendering to improve.While using the
blendRender
, I've also tried settingdropAllAnimations
to true, andtargetFps
to5
. While I am no longer seeing the working crashing, themove
animations are not dropped, and the animation duration lags past the timeline position where they are supposed to disappear. I've also tried different combinations of settinglibassMemoryLimit
andlibassGlyphLimit
both lower (in hopes that it will reduce the resources being used and simply skip over heavy loads), and higher (in hopes that the increased resources would improve render performance). Not sure what is the proper combination of options to get optimal performance from files like the one shown below.Below is a sample of the dialog combination which is attempting to be rendered. Was wondering if @JustAMan or anyone else possibly had any recommendations on configurations to improve rendering performance, or at least allow the renderer to keep in sync with the timeline and just skip frames when under heavy load.
It is also worth noting that this is specifically being seen when the canvas renderer is hosted within a webview in an Android mobile application.
Thanks in advance!
The text was updated successfully, but these errors were encountered: