@astronautlabs/amf

中文文档
0.0.6发布于 2022/07/10MITTypeScriptESM + CJS近 30 天下载 6217

Action Message Format (AMF0/3)

原始使用文档

@/amf

📜 Adobe AMF version 0
Adobe's Action Message Format v0

📜 Adobe AMF version 3
Adobe’s Action Message Format v3

📺 Part of the Astronaut Labs Broadcast Suite

See also:

  • @/rtmp - Adobe's Real Time Messaging Protocol (RTMP)
  • @/flv - Adobe's Flash Video format (FLV)

📝 Alpha Quality
This library is new, no compatibility is currently guaranteed between releases (beta, semver 0.0.x).


Installation

npm i @astronautlabs/amf

Usage


import { AMF0, AMF3 } from '@astronautlabs/amf';

// Encode AMF values

let encoded : Uint8Array;
encoded = AMF0.Value.any(123).serialize();
encoded = AMF0.Value.any(false).serialize();
encoded = AMF0.Value.any(null).serialize();
encoded = AMF0.Value.any({ hello: 'world' }).serialize();
encoded = AMF0.Value.any([ 1, 2, "types", "are", "good" ]).serialize();

// Be specific about types

encoded = AMF3.Value.vector(Int32Array.from([0,1,2,3]));

// Transparent passthrough of existing AMF values

encoded = AMF3.Value.object({ 
    foo: 123,
    bar: AMF3.Value.dictionary({
        baz: 321,
        fizz: 'hello'
    })
})

// Decode values (from Uint8Array/Buffer)

let decoded : AMF0.Value = AMF0.Value.deserialize(encoded);

版本与发布记录

@astronautlabs/amf 共发布 6 个版本,首次发布于 2022/01/30;过去 12 个月发布了 0 个版本。

版本发布日期距今
0.0.6latest2022/07/104 年前
0.0.52022/07/104 年前
0.0.42022/07/104 年前
0.0.32022/02/034 年前
0.0.22022/02/024 年前
0.0.12022/01/304 年前

关于 @astronautlabs/amf 的常见问题

@astronautlabs/amf 是什么?

Action Message Format (AMF0/3)

如何安装 @astronautlabs/amf?

在项目目录运行 npm install @astronautlabs/amf,或使用 pnpm add / yarn add / bun add。

@astronautlabs/amf 支持 TypeScript 吗?

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

@astronautlabs/amf 支持 ESM 还是 CommonJS?

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

@astronautlabs/amf 需要什么版本的 Node.js?

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

@astronautlabs/amf 可以商用吗?

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

@astronautlabs/amf 的下载量有多少?

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

@astronautlabs/amf 还在维护吗?

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