Comments (2)
Thanks @swissspidy I actually had some spare time to implement this. I went with the simplest approach to avoid a breaking change.
import { default as encodeJpeg, init as initJpeg } from '@jsquash/jpeg/encode';
await initJpeg( undefined, {
locateFile: () =>
'https://cdn.jsdelivr.net/npm/@jsquash/[email protected]/codec/enc/mozjpeg_enc.wasm',
} );
const buffer = await encodeJpeg( imageData );
Your use case should hopefully work now with @jsquash/[email protected]+
🤞 – keep me posted if it doesn't
from jsquash.
Great suggestion, I think this has been brought up a few times in some other issues.
I can't put any guarantees on when I might be able to work on this. If you or someone else would like to scaffold a Pull Request with the changes it would be a great help 🙇
I would eventually like to refactor the whole init
method syntax, but to keep the scope focused for the initial change I think the API should look like:
type InitOptions = EmscriptenWasm.ModuleOpts;
export async function init(module?: WebAssembly.Module, options?: InitOptions): Promise<void> {
// ....
}
This would also allow others to modify other relevant emscripten module options that might suit their use case.
from jsquash.
Related Issues (20)
- Oxipng multi-threaded mode fails when run from main thread.
- Export single thread only methods for codecs that have multi-threading. HOT 1
- Doesn't work in Vite SSR HOT 5
- Simple CDN example HOT 5
- Cannot find module in sveltekit project HOT 6
- Issues with multi-threaded worker modules and Vite HOT 13
- Basic Node.js Support HOT 1
- Deno fails with "NotSupported: Classic workers are not supported." HOT 1
- Improve @jquash/avif decode speed HOT 6
- @jsquash/png fails to decode some images HOT 14
- Create a reference decode speed benchmark page HOT 1
- Module not found HOT 1
- gif support? HOT 1
- Add type declarations for all wasm files? HOT 5
- jpeg and webp fail to import inside web worker HOT 2
- Resize component memory leak HOT 7
- Nuxt build error: UMD and IIFE output formats are not supported for code-splitting builds. HOT 4
- Passing a custom fetch function
- background execution? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jsquash.