21

Web 音乐交互框架 Tone.js 简介

 4 years ago
source link: https://www.infoq.cn/article/5m98uTPGad8pT3R4uaZ3
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Tone.js 是一个使用 Web Audio API 为浏览器创建交互式音乐功能的前端框架。

Web Audio API 是 W3C 组织倡议的在 Web 上创建音乐的推荐标准,尽管其前景看好,但当前仍存在 一些挑战和局限性 。为此,Tone.js 致力于提供一个对音乐人士和音频编程人员均友好的框架,以便于创建基于 Web 的音频应用。

Tone.js 提供大量 DAW(数字音频工作站,digital audio workstation)特性,包括事件编排、预建合成器和音效等。Tong.js 在 Web Audio 的 AudioContext 时间之上做了一层抽象,实现用音符和音节替代秒数。

为支持在播放声音前等待浏览器端交互,框架返回一个连接用户交互事件句柄的 Promise(即承诺将来会执行)对象。

Tone.js 提供跟踪时间的 Transport API,并支持循环,以实现音乐的重播和一般声音的循环播放。

Tone.js 提供多种合成器、音效、音源和噪声生成器,并支持创建新的特性。对于支持 WebRTC 协议 的浏览器,还可通过 Tone.js 实现输入外部音频。

运行 Tone.js 只需通过 npm 安装即可。然后在应用中导入相关的 ES 模块,或是导入整个 Tone 框架。

复制代码

npminstalltone

import*asTonefrom"tone";

Tone.js 为浏览器支持音乐功能提供了稳健的框架。软件以 MIT 许可 开源提供 ,并给出了一些颇具吸引力的 示例和演示 。欢迎贡献者参阅 Tone.js 贡献指南

原文链接:

Tone.js Interactive Music Web Framework


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK