使用纯 HTML 与 JavaScript 构建无限生成音乐引擎(基于 Markov)
发布: (2025年12月17日 GMT+8 02:42)
3 min read
原文: Dev.to
Source: Dev.to

我一直在浏览器中尝试 生成音乐系统,想分享一下我最近完成的项目。
这是一款 无限环境音乐生成器,使用 纯 HTML 与 JavaScript 构建,完全在浏览器中通过 Web Audio API 运行。没有后端,没有框架——只有算法和音效设计。
🎼 它能做什么?
引擎会持续生成柔和的环境音乐,采用以下元素:
- 马尔可夫风格的音符转移
- 双层古典吉他
- 钢琴与环境背景纹理
- 低音和细腻的节奏元素
- 基于情感的动态与速度调制
每一次会话 永不重复——音乐会无限演变。
🔊 音效设计亮点
- 算法性琶音与旋律碎片
- Paulstretch 风格的环境层
- 实时 EQ、滤波器与混响控制
- FFT 频谱可视化,提供实时反馈
- 为长时间聆听设计的平滑过渡
适用场景:
- 学习
- 编码
- 冥想
- 背景专注
🛠️ 技术栈
- HTML
- Vanilla JavaScript
- Web Audio API
- Tone.js
- 算法作曲逻辑(受 Markov 启发)
▶️ YouTube 实时演示
我把这个引擎做成了 24/7 实时流,在这里播放:(link to the YouTube stream)
💡 为什么要做这个
我想探索 基于浏览器的音频 在不依赖插件或原生应用的情况下能走多远。这个项目表明,现代 JavaScript 已经足够强大,能够实时创建沉浸式、不断演化的音乐系统。
如果你对以下内容感兴趣:
- 创意编码
- 生成艺术
- 音频编程
- 实验音乐工具
欢迎分享你的想法。
感谢收听 🎧