首页
学习
活动
专区
工具
TVP
发布

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

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框架。

npm install tone
import * as Tone from "tone";

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

原文链接:

Tone.js Interactive Music Web Framework

  • 发表于:
  • 本文为 InfoQ 中文站特供稿件
  • 首发地址 https://www.infoq.cn/article/5m98uTPGad8pT3R4uaZ3
  • 如有侵权,请联系 [email protected] 删除。

关注

腾讯云 开发者 公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券