javascript - 在 web worker 中解码 JPEG

标签 javascript jpeg web-worker emscripten

如何在 Web Worker 中解码 JPEG 以访问像素数据,而不包括解码 JPEG 的代码(由我自己或第 3 方编写),而是使用内置的浏览器 API。


我知道我可以在主线程中将 JPEG 渲染到 Canvas ,读取像素数据,然后将其传递给工作人员(如果这是我想要的),但我正在专门研究在中解码 JPEG 的可能性 worker 。

我也知道我可以使用第三方库,但我想知道浏览器中是否有内置的东西可以做到这一点,因为必须发送复制浏览器功能的代码似乎很奇怪。

最佳答案

长话短说: No .

编辑后,是否可以使用内置API(此时只有canvas)的问题答案是否定的。您不能在 Web Worker 中创建 HTMLElement,包括 canvas,因为它们是 GUI 组件,并且大多数 GUI 框架不允许在 GUI 线程之外实例化 GUI 组件。

这当然很不幸,这意味着根本无法使用 native API (CanvasRenderingContext2D) 进行任何图像操作。

我现在回答的问题已经有人提出并回答了:Web Workers and Canvas

我建议收藏该问题以进行更新 - 我也希望在未来的网络 worker 中可以进行图像处理。

关于javascript - 在 web worker 中解码 JPEG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34761972/

相关文章:

javascript - 如何使用 array.fill 创建对象数组?

javascript - click.function 和 Bootstrap 的轮播按钮之间的冲突

android - yuv.compressToJpeg 不接受 ByteArrayOutputStream?

file - 是否可以直接从网络 worker 保存文件?

javascript - 是否可以将回调传递给网络 worker ?

javascript - VB.NET 数据从父窗口回发的模式弹出窗口中清除

javascript - 我应该在 head 标记中还是在文档末尾包含脚本?

java - 使用 Chart2D 的直方图

javascript - 在请求中使用数据 URI 发送的 Canvas 图像在保存后损坏

javascript - 我可以在 IE11 中从 Web Worker 访问 MSCrypto 吗?