jared-hughes / desmodder-video-creator Goto Github PK
View Code? Open in Web Editor NEWVideo creation plugin for DesModder
Video creation plugin for DesModder
This is equivalent to reloading the page, but could be faster and avoids the need for a save + rerender.
Reported by Idealistic-Introvert in the discord. SBOX_FATAL_MEMORY_EXCEEDED.
Of course, we don't want a full crash of the tab because that loses all captured frames. If we can't avoid the crash, might want to
Needs more testing:
Still default to the screen width, but provide this as an option for high- or low-res to be selected without resizing the window.
It would be great to scale the canvas as well, to get instant feedback/preview.
Warning message: "SharedArrayBuffer will require cross-origin isolation as of M91, around May 2021."
Different possible fixes:
Regarding the headers option:
It looks like extension can use onHeadersReceived to enable it
"This event is intended to allow extensions to add, modify, and delete response headers"
However, it looks like there's some exceptions:
Starting from Chrome 79, request header modifications affect Cross-Origin Resource Sharing (CORS) checks. If modified headers for cross-origin requests do not meet the criteria, it will result in sending a CORS preflight to ask the server if such headers can be accepted. If you really need to modify headers in a way to violate the CORS protocol, you need to specify 'extraHeaders' in opt_extraInfoSpec. On the other hand, response header modifications do not work to deceive CORS checks. If you need to deceive the CORS protocol, you also need to specify 'extraHeaders' for the response modifications.
Starting from Chrome 79, the webRequest API does not intercept CORS preflight requests and responses by default. A CORS preflight for a request URL is visible to an extension if there is a listener with 'extraHeaders' specified in opt_extraInfoSpec for the request URL. onBeforeRequest can also take 'extraHeaders' from Chrome 79.
I took this screenshot a while back, maybe it was from a Chrome dev blog post:
It's way too long. At minimum, utilize the following files:
Try animating x_{0}
or \theta
in https://www.desmos.com/calculator/n0cn60xq1p.
I'm guessing it doesn't detect the slider? Maybe it's taking string[0] === variable
instead of string.match(variable)
.
Currently, the only visual indication is a surprising stop of capture and a light-gray "revert viewport" button.
It would be better to have a (yellow?) alert that capture has stopped.
Error happens when attempting to open the simulation capture tab in the video creator menu and the simulation is empty. The error is not catastrophic. Its only side effect is that the UI does not show up.
Only the first attempt throws error. Subsequent attempts work as intended and the UI shows up.
Replicated in dev mode to get error message. Here is the message
Discussed here at Discord
Edit: don't waste time reading this. See the last comment
My reasoning here is that many of my simulated graphs have a master switch (a non-simulated variable) that kicks off the simulation when set to 1, and I noticed that the conditional for sim-capture is a Desmos "boolean" expression wrapped in a piecewise which is then evaluated in a HelperExpression.
However, when I try to reference my non-simulated variable DesModder prevents me from capturing video. Is the following warning the reason why you disallowed this behavior?
desmodder-video-creator/Controller.ts
Lines 437 to 439 in 536a0c3
FFMPEG can natively, and easily, manage animated PNGs with the following command:
ffmpeg -r 60 -i INPUT.png -f apng OUTPUT.png
Note the format flag is used to avoid the rather niche .apng extension.
Additionally, the extra flag of -plays
can be included followed by a number to determine the number of times the animation should loop. The following example hard-codes unlimited loops:
ffmpeg -r 60 -i INPUT.png -plays 0 -f apng OUTPUT.png
If you like the idea, feel free to assign this to me.
Probably simple fix: change setInterval
to repeated setTimeout
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.