@corpusant/web-pcm-player

中文文档
1.0.1发布于 2026/02/12MITES Module近 30 天下载 2593

Library for playing PCM audio in the browser

原始使用文档

Web PCM audio player

Package for playing PCM audio in the browser. Both signed 16-bit int and 32-bit float encodings are supported.

The player requires a given AudioContext to play audio within. It does not manage/change the lifecycle of the audio context (this is left to the consumer).

Installation

NPM

This package can be installed from NPM

npm i @speechmatics/web-pcm-player

Import map

You can also fetch the code from UNPKG for use in an import map:

<script type="importmap">
  {
    "imports": {
      "@speechmatics/web-pcm-player": "https://unpkg.com/@speechmatics/[email protected]/dist/index.min.js"
    }
  }
</script>

Usage

This library can be used to play PCM data from either an:

  • Int16Array for 16-bit unsigned integer PCM or
  • Float32Array. for 32-bit float PCM

These formats correspond to pcm_s16le and pcm_f32le respectively, as described in the FFMPEG guide to PCM formats here. If you'd like more PCM formats to be added, feel free to raise an issue.

Base64 audio example

Below is an example usage playing pcm_s16le audio rendered as Base 64.

For a full working example, open the file examples/example.html in the browser.

import { PCMPlayer } from "@speechmatics/web-pcm-player";

async function playTestAudio() {
  const audioContext = new AudioContext({ sampleRate: 16_000 });
  await audioContext.resume();
  const player = new PCMPlayer(audioContext);

  for (const audioChunk of base64Data) {
    const buffer = Uint8Array.from(atob(audioChunk), (c) =>
      c.charCodeAt(0)
    );
    const data = new Int16Array(buffer.buffer);
    player.playAudio(data);
  }
}

window.onload = () => {
  document.getElementById("play-button").addEventListener("click", () => {
    playTestAudio();
  });
};

const base64Data = [
  // See data in the examples/ folder
];

版本与发布记录

@corpusant/web-pcm-player 共发布 2 个版本,首次发布于 2026/01/31;过去 12 个月发布了 2 个版本。

版本发布日期距今
1.0.1latest2026/02/128 个月前
1.0.02026/01/319 个月前

关于 @corpusant/web-pcm-player 的常见问题

@corpusant/web-pcm-player 是什么?

Library for playing PCM audio in the browser

如何安装 @corpusant/web-pcm-player?

在项目目录运行 npm install @corpusant/web-pcm-player,或使用 pnpm add / yarn add / bun add。

@corpusant/web-pcm-player 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/corpusant__web-pcm-player 是否存在。

@corpusant/web-pcm-player 支持 ESM 还是 CommonJS?

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

@corpusant/web-pcm-player 可以商用吗?

@corpusant/web-pcm-player 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@corpusant/web-pcm-player 的下载量有多少?

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

@corpusant/web-pcm-player 还在维护吗?

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