Skip to content

CanvasKit: move image decoding to web workers #63397

@yjbanov

Description

@yjbanov

See also https://bugs.chromium.org/p/skia/issues/detail?id=10360

Image decoding in Flutter is already asynchronous, so this would be a non-breaking change. There are two ways to move image decoding to web workers:

  • Use WASM thread support and use a web-worker as a second thread. It can be used for image decoding without blocking the main UI thread. In the future we can move font decoders there too. Image data can be passed efficiently by sharing WASM memory.
  • Use Canvas2D on a web-worker. Image data can be passed efficiently using transferrable arrays.

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work listc: performanceRelates to speed or footprint issues (see "perf:" labels)e: web_canvaskitCanvasKit (a.k.a. Skia-on-WebGL) rendering backend for Webengineflutter/engine related. See also e: labels.perf: speedPerformance issues related to (mostly rendering) speedplatform-webWeb applications specifically

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions