@audio/decode-wavpack

中文文档
2.0.0发布于 2026/09/29BSD-3-ClauseTypeScriptES Module零依赖近 30 天下载 54.7万

解码WavPack (.wv) 有 libwavpack WASM 的音频

中文使用文档

@audio/decode-wavpack (英语) npm BSD-3-Clause

解码WavPack (.wv) 为PCM 浮标样本

npm install @audio/decode-wavpack
import decode, { decoder } from '@audio/decode-wavpack'

自由包装 (参考WavPack 5执行,David Bryant)被编译成一个单文件的WASM ES模块——没有副文件,从任何CDN,节点,工人和AudioWorklets中装入. 处理格式所定义的一切:无损失和杂交/损失,8/16/24/32位整数和32位浮点,单通过多通道,和DSD-as-PCM(OPEN_DSD_AS_PCM在图书馆被砍成24位PCM 流取解码驱动 libwavpack 自己的块读取器通过内存支持 WavpackStreamReader64,因此多通道块组和适应性装饰状态的处理恰好与参考库处理它们一样——这个包只处理音轨字节级块边界.

let { channelData, sampleRate } = await decode(wvBytes)

let dec = await decoder()
let head = dec.decode(chunk1)   // synchronous; partial blocks carry over
let tail = dec.flush()          // drops an incomplete trailing block, if any
dec.free()
导出
decode(src)Promise<AudioData>全流解码
decoder()Promise<{decode, flush, free}>流出解码器; decode(chunk) 是同步的

AudioData 实值 { channelData: Float32Array[], sampleRate: number }样本 [-1, 1]。整数PCM的缩放为 2^(bits-1) (非对称,匹配WAV常规:最大正样本地图到 <1,最大负到准确 -1; 浮点PCM是一种直接的位重解析(WavPack存储浮点标本在打开时预先正常化) OPEN_NORMALIZE,这个包总是设置。 频道以libwavpack的顺序出品,对于标准微软订购的源(任何ffmpeg或WavPack CLI出品)来说是WAV的订单:FL,FR,FC,LFE,BL,BR,.

decode() 排出每个样本 libwavpack 能够生产出 的块到目前为止, 每一个呼叫—— 没有编码器 搜索头 或块宽延阻, 所以 flush() 只会丢弃一个不完整的后退区块(从中区块中断出一串溪流),并返回任何新的.

混合式/损耗式-b<n>解码,无论编码的质量如何 .wvc 校正文件( lossless- hybrid two- file 模式) 不读取—— 只有独立文件 .wv 位流 。 垃圾或非WavPack输入会丢出而不是返回空/错误数据.

使用时 : 在浏览器或节点中需要一个从scratch, spec-精确的WavPack解码器——音频工具读取 .wv 或任何已经发言的管道 @audio是因为 {channelData, sampleRate} 形状.


部分 @ audio/ 代码 ——解码出家伞.

ॐ • 妇女 BSD-3- 标签,从捆绑中继承 自由包装。 。 。 .

版本与发布记录

@audio/decode-wavpack 共发布 2 个版本,首次发布于 2026/08/29;过去 12 个月发布了 2 个版本。

版本发布日期距今
2.0.0latest2026/09/291 个月前
1.0.02026/08/292 个月前

关于 @audio/decode-wavpack 的常见问题

@audio/decode-wavpack 是什么?

解码WavPack (.wv) 有 libwavpack WASM 的音频

如何安装 @audio/decode-wavpack?

在项目目录运行 npm install @audio/decode-wavpack,或使用 pnpm add / yarn add / bun add。

@audio/decode-wavpack 支持 TypeScript 吗?

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

@audio/decode-wavpack 支持 ESM 还是 CommonJS?

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

@audio/decode-wavpack 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=18。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@audio/decode-wavpack 可以商用吗?

@audio/decode-wavpack 使用 BSD-3-Clause 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。另外不得用原作者名义为衍生产品背书。以上为概括,不构成法律意见,请以许可原文为准。

@audio/decode-wavpack 的下载量有多少?

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

@audio/decode-wavpack 还在维护吗?

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