如何在 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/