@desert-ant-labs/clear

中文文档
4.3.0发布于 2026/11/06SEE LICENSE IN LICENSE.mdTypeScriptES Module近 30 天下载 1.8万

用于JavaScript的On-device语音增强: denoise, dereverb,并高音常态化为播客准备的48 kHz. 在浏览器(WebAssembly + LiteRT.js)和服务器端(native)运行,从一个导入.

中文使用文档
文档目录5 节
  1. 使用量
  2. 频道
  3. 掌握
  4. 自我接待和进步
  5. 许可证

@ 沙漠- ant- labs/ clear

JavaScript 的在线语音增强。 单曲录音很吵 (平顶麦克风、未经处理的房间、交通)并返回播客准备的48千赫音频: 从精细的地皮上取出 DeepFilterNet 3 (英语),然后声音 向交付目标正常化。 一切都在本地运行,所以录音从不 离开设备或浏览器.

两条共用一条 Clear API : (英语)

  • @desert-ant-labs/clear (默认):一个WebAssembly输油管 LitteRT.js (法语) 推论 (XNNPACK默认加速CPU,可选WebGPU),用于 浏览器。 没有本地的依赖性,所以每个目标都有一个干净的进口建筑 多目标捆绑机(Next.js、Remix、SvelteKit、Nuxt),包括 浏览器捆绑和客户端-组件 SSR 通过这些框架 节点. 这是安全的 导入 服务器侧渲染时, 但 LiteRT.js 需要 浏览器( 或 Web Worker) 以初始化, 所以 Clear.load() 只运行推论 在浏览器中; 在平端节点中调用它 交给你 /native。 。 。 .
  • @desert-ant-labs/clear/native: 预建的本地核心( LiteRT on Linux, 核心ML在macOS上,用于 服务器侧推论 在节点。 没有 @litertjs/core, (中文(简体) ), 没有建造工具,没有旗帜。 从纯服务器代码( API 路由、 服务器) 导入 动作,普通节点脚本). 不要从同样组件导入它 在浏览器中制作.
# Browser (default entry):
npm i @desert-ant-labs/clear @litertjs/core

# Server-side inference in Node (/native entry) needs no extra install:
npm i @desert-ant-labs/clear

使用量

import { Clear } from "@desert-ant-labs/clear";           // browser
// import { Clear } from "@desert-ant-labs/clear/native"; // server-side Node

const clear = await Clear.load();          // downloads and caches on first use
const result = await clear.enhance(samples, 48_000);

result.samples;                // Float32Array, 48 kHz mono, whatever went in
result.measuredLUFS;           // integrated loudness of the input
result.measuredTruePeakDBFS;   // true peak of the output, after limiting
result.realtimeFactor;         // above 1 is faster than real time

clear.dispose();

输入可以是 Float32Array 或简单的数组,以任何样本速率.

频道

输出为 默认单无论什么,模型都是单的,所以 保留一对立体声,每个频道(约1.8x单声道)都要通过推断 运行)。 每个频道通过一个条目 财务报告和审定财务报表 要求保留:

const stereo = await clear.enhance([left, right], 48_000, { channelMode: "preserve" });
stereo.channelCount;   // 2
stereo.channels;       // [Float32Array, Float32Array]
stereo.samples;        // the first channel

离开 channelMode 单独(或设置为 "mono"之前的下调混合 增强,所以模型运行一次:

await clear.enhance([left, right], 48_000);   // one channel out, one inference pass

主人公是关节:一个音响增益和一个限制信封横跨 所以它不会移动立体声图像. balanceChannelsLUFS 这是 故意例外,对一对其侧面记录在不同级别:

await clear.enhance([left, right], 48_000,
                    { channelMode: "preserve", balanceChannelsLUFS: -20 });

掌握

默认情况下,输出会正常化到 Apple Podcasts 目标(-19 LUFS) ,使用 a -1.5 dBTP 上限,由外观前方限制器而不是转动 整个文件下来 以适应它最响亮的瞬间.

await clear.enhance(samples, 48_000, { targetLUFS: "spotify" });   // -14 LUFS
await clear.enhance(samples, 48_000, { targetLUFS: -23 });         // an explicit target
await clear.enhance(samples, 48_000, { targetLUFS: null });        // skip mastering

LOUDNESS_PRESETS 携带已公布的平台目标(applePodcasts, (中文(简体) ), spotify, (中文(简体) ), youtube, (中文(简体) ), broadcast) (中文(简体) ). 另有两个接头: peakCeilingDBFS (违约-1.5)和 maxGainDB (违约9),它如何约束 一个非常安静的输入被解除 这样模型的噪音地板就不会出现 带着它.

strength 将增强的信号与原信号相混合,因为 音效处理得太快 :

await clear.enhance(samples, 48_000, { strength: 0.7 });

outputSampleRate 设定交货率。 该型号一直运行在48千赫和 结果在出道时被重印,所以计分器和限制器仍然看到 其常数的计算率用于:

await clear.enhance(samples, 48_000, { outputSampleRate: 44_100 });

自我接待和进步

const clear = await Clear.load({
  modelBaseUrl: "/assets/clear/",     // browser: serve the files yourself
  directory: "/var/cache/clear",      // Node: adopt or download here
  onProgress: (fraction) => console.log(fraction),
});

模型重播和修订被固定在这个 SDK 版本上,所以安装是 可再生产。 体重维持 拥抱 脸。 。 。 .

许可证

沙漠蚂蚁实验室 源头可破坏许可证。为大多数免费提供 应用软件和商务许可证必须规模化。 完整的术语在链接. 许可证发放: 许可@ desertant.com。 。 。 .

SDK的第三方通知: THIRD_PARTY_NOTICES.md。 。 。 .

权重第三方通知: THIRD_PARTY_NOTICES.md。 。 。 .

版本与发布记录

@desert-ant-labs/clear 共发布 22 个版本,首次发布于 2026/06/30;过去 12 个月发布了 22 个版本。

版本发布日期距今
4.3.0latest2026/11/066 天前
4.2.32026/10/3112 天前
4.2.22026/10/3112 天前
4.2.12026/10/2815 天前
4.2.02026/10/2716 天前
4.1.02026/10/2023 天前

关于 @desert-ant-labs/clear 的常见问题

@desert-ant-labs/clear 是什么?

用于JavaScript的On-device语音增强: denoise, dereverb,并高音常态化为播客准备的48 kHz. 在浏览器(WebAssembly + LiteRT.js)和服务器端(native)运行,从一个导入.

如何安装 @desert-ant-labs/clear?

在项目目录运行 npm install @desert-ant-labs/clear,或使用 pnpm add / yarn add / bun add。

@desert-ant-labs/clear 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@desert-ant-labs/clear 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@desert-ant-labs/clear 可以商用吗?

@desert-ant-labs/clear 使用 SEE LICENSE IN LICENSE.md 许可。许可条款写在包内的独立文件中,请阅读该文件确认可否商用。以上为概括,不构成法律意见,请以许可原文为准。

@desert-ant-labs/clear 的下载量有多少?

根据 npm 官方下载统计,@desert-ant-labs/clear 在 2026/10/12 – 2026/11/10 这 30 天内被下载 18,224 次,日均约 607 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@desert-ant-labs/clear 还在维护吗?

最新版本 4.3.0 发布于 2026/11/06(6 天前);至今共发布 22 个版本,其中过去 12 个月发布了 22 个;首次发布于 2026/06/30。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。