# @dolbyio/webrtc-stats 中文文档

规范地址：https://npmcn.com/package/%40dolbyio/webrtc-stats/

版本：1\.3\.0
npm 元数据更新时间：2026-09-03T22:40:23.325Z
中文译文更新时间：2026-11-12T15:09:27.505Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40dolbyio/webrtc-stats
原文对照：https://npmcn.com/package/%40dolbyio/webrtc-stats/?lang=original
项目主页：https://github.com/DolbyIO/web-webrtc-stats#readme
源码仓库：https://github.com/DolbyIO/web-webrtc-stats

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：187 kB，13 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：1 个
- 首次发布：2023-03-08T01:25:46.161Z
- 最新版本发布：2026-09-03T22:40:22.786Z
- 近 30 天下载量：58228（2026-10-13 至 2026-11-11，npm 官方下载统计）
- 已发布版本数：12（近 12 个月 3 个）

## 中文简介

Dolby OptiView WebRTC 统计

## 安装

```sh
npm install @dolbyio/webrtc-stats
```

也可以使用：`pnpm add @dolbyio/webrtc-stats`、`yarn add @dolbyio/webrtc-stats`、`bun add @dolbyio/webrtc-stats`

## README

[![Build Package](https://github.com/DolbyIO/web-webrtc-stats/actions/workflows/build-package.yml/badge.svg)](https://github.com/DolbyIO/web-webrtc-stats/actions/workflows/build-package.yml) [![Build Documentation](https://github.com/DolbyIO/web-webrtc-stats/actions/workflows/build-documentation.yml/badge.svg)](https://github.com/DolbyIO/web-webrtc-stats/actions/workflows/build-documentation.yml) [![Publish Package](https://github.com/DolbyIO/web-webrtc-stats/actions/workflows/publish-package.yml/badge.svg)](https://github.com/DolbyIO/web-webrtc-stats/actions/workflows/publish-package.yml) [![npm](https://img.shields.io/npm/v/@dolbyio/webrtc-stats)](https://www.npmjs.com/package/@dolbyio/webrtc-stats) [![License](https://img.shields.io/github/license/DolbyIO/web-webrtc-stats)](https://npmcn.com/package/%40dolbyio/webrtc-stats/LICENSE)

# Dolby OptiView WebRTC 统计

该项目是一个用于分析WebRTC统计数据的库.

## 安装此工程

运行以下 npm 命令以安装软件包 `@dolbyio/webrtc-stats` 输入您的项目 :

```bash
npm install @dolbyio/webrtc-stats
```

## 使用库

### 收藏

A 类 `WebRTCStats` 要启动 WebRTC 统计收集,需要创建对象。 它需要一些设置来配置您想要收藏如何工作 。 首先导入 `WebRTCStats` 定义.

```ts
import { WebRTCStats } from '@dolbyio/webrtc-stats';
```

创建此示例的收藏对象 :

```ts
const collection = new WebRTCStats({
    getStats: () => {
        // Get the raw WebRTC statistics from the web browser
    },
    getStatsInterval: 1000,
    includeRawStats: true,
});
```

以 `start()` 函数.

```ts
collection.start();
```

停止收藏与 `stop()` 函数.

```ts
collection.stop();
```

### 活动

在开始收集后 `stats` 当WebRTC统计被收集并解析时,会触发事件.

```ts
import { OnStats } from '@dolbyio/webrtc-stats';

collection.on('stats', (event: OnStats) => {
    console.log(event);
});
```

这个 `error` 当收集或解析WebRTC统计时发生错误时,会触发事件.

```ts
collection.on('error', (reason: string) => {
    console.error(reason);
});
```

### 示例

如何开始从 [多尔比奥普蒂维尤](https://docs.optiview.dolby.com/millicast/) SDK(英语:SDK).

```ts
import { WebRTCStats, OnStats } from '@dolbyio/webrtc-stats';
import { Director, Publish } from '@millicast/sdk';

const PUBLISHER_TOKEN = '';
const STREAM_NAME = '';

const tokenGenerator = () =>
    Director.getPublisher({
        token: PUBLISHER_TOKEN,
        streamName: STREAM_NAME,
    });

const publisher = new Publish(undefined, tokenGenerator);

// HERE: Publish a stream to Dolby OptiView

const collection = new WebRTCStats({
    getStatsInterval: 1000,
    getStats: () => {
        return publisher.webRTCPeer.getRTCPeer().getStats();
    },
});

// The stats event is triggered after each interval has elapsed
collection.on('stats', (event: OnStats) => {
    console.log(event);
});

// Start the statistics collection
collection.start();
```

## 日志

也可以使用以下代码打印控制台中的日志并选择日志级别.

```ts
import { Logger } from '@dolbyio/webrtc-stats';

Logger.useDefaults({
    defaultLevel: Logger.TRACE,
});
```

## 怎么样

运行测试 :

```bash
npm run test
```

创建分发包 :

```bash
npm run build
```

文献以 [类型文件](https://typedoc.org/),生成 Doc,运行以下命令。 您可以在 `docs` 文件夹.

```bash
npm run docs
```

## 相关项目

-   [微调 SDK](https://github.com/millicast/millicast-sdk)
-   [js 拖放器](https://github.com/jonnyreeves/js-logger)
-   [类型文件](https://typedoc.org/)
-   [欢乐](https://jestjs.io/)

## 常见问题

### @dolbyio/webrtc-stats 是什么？

Dolby OptiView WebRTC 统计

### 如何安装 @dolbyio/webrtc-stats？

在项目目录运行 npm install @dolbyio/webrtc-stats，或使用 pnpm add / yarn add / bun add。

### @dolbyio/webrtc-stats 支持 TypeScript 吗？

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

### @dolbyio/webrtc-stats 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @dolbyio/webrtc-stats 可以商用吗？

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

### @dolbyio/webrtc-stats 的下载量有多少？

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

### @dolbyio/webrtc-stats 还在维护吗？

最新版本 1\.3\.0 发布于 2026/09/04（2 个月前）；至今共发布 12 个版本，其中过去 12 个月发布了 3 个；首次发布于 2023/03/08。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

