WebAssembly 的一些有趣应用
WebAssembly(缩写为Wasm)是一种基于堆栈的虚拟机的二进制指令格式。Wasm 被设计为编程语言的可移植编译目标,支持在网络上部署客户端和服务器应用程序。
目前许多编译型语言(C/C++、Golang、Rust……)都支持移植到Wasm,使得这些编译型语言可以在浏览器中运行,从而得到比 JavaScript 更高的效率和性能。另外,一些历史悠久的开源程序也可以通过 Wasm 技术移植运作在浏览器中。
不仅如此,Wasm 沙盒特性(类似浏览器沙盒技术)可以允许第三方代码安全的运行在终端中,现已被 Cloudflare 应用到边缘计算中,推出了 Cloudflare Worker,允许用户在 CDN 节点上执行 Javascript、Golang、Rust 等代码。
ffmpeg.wasm
ffmpeg 是音视频处理的瑞士军刀,可以执行音频和视频多种格式的录影、转换、串流功能。ffmpeg.wasm 完成 ffmpeg 移植到 WebAssembly,从而可以在浏览器中进行音频和视频多种格式的录影、转换、串流。
waifu2x wasm版本
waifu2x 是利用卷积神经网络对动漫风格的图片(也支持照片,但是效果有限)进行无损放大的项目,Wasm版本可以直接在浏览器中运行。
vim.wasm
vim 是古老的命令行文本编辑器,Wasm 使其可以在浏览器运行。
Tesseract.js
Tesseract.js 是流行的 Tesseract OCR 引擎的纯 Javascript 版本,同时也支持 Wasm 版本。
Tesseract.js 支持100 多种语言、自动文本方向和脚本检测、用于读取段落、单词和字符边界框的简单界面。
jslinux
在浏览器中运行 Linux 或 Windows 2000 操作系统!