Rust bindings to make WASM more tolerable.
Some crates use unstable web_sys
APIs and you may need to set --cfg=web_sys_unstable_apis
when compiling.
For more information, see the web-sys docs.
There's a few ways to set this depending on the environment:
- Cargo Config via
rustflags
- Github Action via
GITHUB_ENV
- docs.rs via
package.metadata.docs.rs
web-codecs provides a wrapper around the WebCodecs API.
The callbacks have been replaced with a channel-like API.
For example, the VideoEncoder
is split into a VideoEncoder
for input and a VideoEncoded
for output.
web-streams provides a wrapper around the Streams API.
This API is annoyingly untyped when using web_sys. This library handles the casting for you as well as providing guard-rails around the API (ex. closing on Drop).