打开网页就能弹的在线钢琴模拟器:三个八度的可视钢琴键盘,鼠标点、手指按、电脑键盘敲都行——下排 Z S X D C V G B H N J M 是一个八度,上排 Q 起高一个八度,左右方向键换八度,空格当延音踏板。钢琴、电子琴、风琴三种音色全部由浏览器现场合成,不加载音频文件。还能跟着《小星星》《欢乐颂》这几段公有领域的老曲子一个键一个键地弹,也能把自己弹的录下来回放。这台网页钢琴不用下载、不用注册,电脑钢琴和手机都能直接用。
怎么用
这是一台打开网页就能弹的在线钢琴:不用下载、不用注册,点开就是一排可视的钢琴键盘。默认显示 C3 到 C6 三个八度、共 37 个键(22 个白键、15 个黑键),正中间那个标着「中央 C」的白键就是乐谱上最常提到的 C4。
三种弹法随你用,可以混着来。
一、鼠标点、手指按
鼠标点哪个键响哪个键;按住不放横着划过去,会像用手指扫过真琴一样一个接一个地响,这个动作叫刮奏。
手机和平板上支持多点同时按,点哪个键响哪个键,几根手指一起按下去就是一个和弦。屏幕窄,三个八度一屏放不下,所以在琴键上横着滑是把键盘滑到别的音区(默认能看到两个八度左右),也可以用下面的「← 低八度/高八度 →」整段挪八度。横滑被让给了滚动,所以刮奏只在鼠标下有效,触屏上滑过去是换区不是出声。
二、电脑键盘(这是最顺手的一种)
接着实体键盘的时候,电脑键盘的两排键直接对应一个半八度的十二个半音:
| 排 | 键 | 对应 |
|---|---|---|
| 下排 | Z S X D C V G B H N J M | 一个八度的十二个半音,Z = 中央 C |
| 上排 | Q 2 W 3 E R 5 T 6 Y 7 U | 高一个八度的十二个半音,Q = C5 |
规律很简单:字母行上的字母是白键,它上面那一排的字母和数字是黑键。Z X C V B N M 一路按下去就是 do re mi fa sol la si,中间夹着的 S D G H J 就是五个黑键。页面最下面那张键位图常驻,换了八度它也跟着变,不用记。
- ← 和 →:整体换八度(一共可以在五档之间挪,最低到 C1、最高到 C8 那一段);
- 空格:延音踏板,按住期间松开琴键也不断音,松开空格才一起收掉;
- 同时按住好几个字母键就是和弦——能同时按几个,取决于你的键盘,见下面「怎么看结果」。
不想让页面接管这些键(比如你要用空格翻页、方向键滚动),点一下「暂停拦截」,这些键立刻还给浏览器,鼠标和触屏照常能弹。
三、三种音色
全部由浏览器现场合成,这一页不加载任何音频文件:
| 音色 | 怎么合出来的 | 听感 |
|---|---|---|
| 钢琴(默认) | 基频+二三四次谐波叠加,几毫秒冲到顶后一路指数衰减 | 一敲就响、越拖越弱,按着不放也会自己散掉 |
| 电子琴 | 方波过一道低通滤波,起音快、按住不减弱 | 接近早年电子琴模拟器那种方头方脑的味道 |
| 风琴 | 五层谐波的持续音,起音稍慢 | 按住多久响多久,最适合按着和弦听音程 |
低音比高音拖得久,这一点是照真钢琴的脾气做的:低音区弦长、阻尼小,余音本来就长。
四、键上标什么
「键上标什么」下拉四档,随时切:
- 标音名(C4、D4、F#4……,中央 C 单独标成「中央 C」)——认音、对谱子的时候用;
- 标唱名(do re mi……)——按简谱弹、教小孩的时候用;
- 标电脑键位(Z、S、X……)——练键盘映射的时候用;
- 不标——纯凭耳朵和手感。
不管标不标,键盘上方那一格都会实时显示你刚按的那个音:音名、唱名、频率(精确到 0.01 Hz)和它对应的电脑键位。
五、跟着弹
下拉里选一段,点「跟着弹 关」把它打开,键盘上就会高亮下一个该按的键,按对了才往下走,按错了不扣分也不打断——这一栏不计分、不排名、不消耗任何东西。下面那条简谱会同步走,已经弹过的变淡、当前这个变橙。
点「听一遍」是让它自己放一遍给你听,键和简谱一起亮;点「从第一个音重来」回到开头。内置的五段全是公有领域的老曲子:《小星星》《两只老虎》《欢乐颂》《铃儿响叮当》《伦敦桥》,每一段的年代与出处都写在换曲之后的那行提示里。
六、录下来回放
点「开始录制」随便弹,弹完点「停止录制」,再点「回放」就能原样听一遍,节奏和踩没踩延音都还原。它记的是「第几毫秒按了哪个键」的事件表,只在这一页的内存里,刷新就没了,不录音频、不用麦克风、不上传。
七、设置会被记住
音色、标注方式、音量和八度偏移存在你这台设备的浏览器里,下次打开还是这一套;清掉浏览数据会回到默认的钢琴音色、标音名、七成音量、C3~C6。
怎么看结果
这一页没有成绩,但有几个读数和现象值得照着判断。
键盘上方那个读数怎么看
比如显示「A4 唱名 la4 频率 440.00 Hz」,三件事:
- A4 是音名,字母是音级、数字是第几组。中央 C 是 C4,它左边那个 C 是 C3,右边是 C5;
- 440.00 Hz 是这个音每秒振动多少次。A4 = 440 Hz 是国际标准音(ISO 16),全世界乐团对音都从它开始;
- 高八度频率正好翻一倍:A5 是 880 Hz,A3 是 220 Hz,A2 是 110 Hz。这一条可以自己在页面上验:按一个音记下频率,按 ← 换低八度再按同一个键,读数应当正好是一半。
相邻两个半音的频率比恒定为 2 的十二次方根,约 1.059463,这就是十二平均律。所以 C4 是 261.63 Hz,C#4 是 277.18 Hz,一路乘上去十二次正好回到 523.25 Hz 的 C5。
「我同时只能按三个键」正常吗
这是常见现象,多半是键盘的事,不是网页的事。 多数薄膜键盘内部是矩阵扫描,同一区域三个键一起按,电路分不清到底是哪几个,于是吞掉一个、或者报一个你没按的键,这个限制通常写作 rollover。判断方法:
- 先用鼠标或触屏同时按住几个键(手机上用几根手指),如果和弦完整——说明页面这边没问题;
- 再换不同区域的字母键试,比如 Z 和 Q 和 U 分开按,通常能同时认更多;
- 想看清楚自己这块键盘的上限,去键盘测试页按住几个键,看同时亮了几个。
这类现象通常意味着这块键盘的矩阵扫描有冲突,可以换一块标着「全键无冲」的键盘、或者换个 USB 接口、换台电脑再测一次排除,不用急着判断键盘坏了。
「声音有延迟」「和伴奏对不上」
网页发声到你听见中间有一段输出延迟,来源有三处:
- 蓝牙耳机是大头,常见几十毫秒到一两百毫秒,弹快句子会明显觉得手和声音脱节。练习请用有线耳机或直接外放;
- 系统音频缓冲:Windows 上换不同的声卡驱动差别不小;
- 浏览器自身的调度:页面正在跑别的重活时会更抖。
这些都只影响「按下到听见」的那一段,不影响音高,也不影响录制回放的相对节奏(录的是按键时刻)。网页量不到、也不该替你判断具体是多少毫秒,能做的是换一条线、换个接口、换台设备再试一次。
没声音怎么办
按这个顺序排查:
- 先用鼠标点一下琴键——浏览器要求有真实点击才允许发声,页面刚打开时是没有声音环境的;
- 手机侧面的静音开关(iPhone 上网页声音算媒体音,一拨就全没了);
- 媒体音量和页面上的音量滑块;
- 耳机是不是连到了别的设备。
页面上出现红色说明的那种情况,是这个浏览器没有给出 Web Audio,琴键照常能按、音名照常显示,只是不发声,换个浏览器再试。
音色听起来「不像钢琴」正不正常
正常。这一页是合成出来的近似,不是采样钢琴——详见下面「常见问题」第一条。想听「像不像」,用风琴音色按一个大三和弦(比如 C、E、G 三个键一起按住),持续音最容易听出音程关系;想听敲击感,用默认的钢琴音色单键短按。
常见问题
在线钢琴、模拟钢琴、网页钢琴、电脑钢琴,说的是一回事吗?
基本是一回事,只是不同人搜的时候顺手打成了不同的词。在线钢琴、钢琴在线、模拟钢琴、网页钢琴、电脑钢琴、键盘钢琴、钢琴键盘,指的都是「在浏览器或电脑上按键出钢琴声」这件事,所以搜钢琴模拟器在线或者在线钢琴模拟器找到的也是同一类页面。要区分的只有一点:电子钢琴和电子琴更多时候指的是实体乐器(前者力度感应、配重键,后者通常是轻键、自带伴奏),网页上的电子琴模拟器则是用合成音色去模仿后者的音色。
用电脑键盘弹钢琴,能当练琴用吗?
能练的和不能练的要分清。能练:认音名与唱名、认十二个半音的排列、练音程和和弦的听感、把简谱在脑子里过一遍。练不了:手型、触键力度、踏板的深浅、双手配合的重量感——电脑键盘是开关式的,按下去只有「有」和「没有」,没有力度层次,真钢琴的表现力大半在力度上。把这一页当成随手能用的认音工具比较合适,真要学琴还是得摸有配重的琴键。
手机上能弹吗?
能,而且支持多点同时按。手机屏幕窄,默认看到两个八度左右,左右滑动换音区,或者用「← 低八度/高八度 →」整段挪。手机上没有实体键盘,所以键位映射那一套用不上,把「键上标什么」切到标唱名会更好用。
为什么黑键是「两个一组、三个一组」这么排?
因为一个八度里有十二个半音,其中七个是白键、五个是黑键,而 E 与 F 之间、B 与 C 之间天然没有半音,所以那两个位置就空了出来,剩下的五个黑键自然分成了 2+3 两组。这个分组是有用的:两个黑键左边那个白键永远是 C,三个黑键左边那个白键永远是 F。找中央 C 的老办法就是先找两个一组的黑键,再往左边看一格。
延音踏板到底做了什么?
在真钢琴上,踩下右边那个踏板会把所有制音器一起抬起来,于是你松了键,弦还在响,别的弦也跟着共振。这一页做的是前半件事:踏板踩着的时候,松开的音不会立刻停,等松踏板才一起收掉。共振那一层没有做。用法上最直接的好处是弹琶音:一个一个按上去,松了手音还叠着,听起来才像一个和弦而不是六个孤立的点。
这一页会用麦克风吗?会上传什么吗?
都不会。这一页不申请麦克风权限、不申请任何设备权限,也不发任何网络请求:音高是现算的,声音是浏览器现场合成的,录制只是一串按键时刻放在内存里,刷新就没了。唯一写进你设备的是一条设置记录(音色、标注方式、音量、八度),存在浏览器本地,清掉浏览数据就没了。
还有别的声音类工具吗?
同一组里还有在线节拍器(打拍子、测一首歌的 BPM)、在线调音器(给吉他、尤克里里这类乐器对音)、在线架子鼓(键盘和触屏都能打,自带几个基础节奏型)和白噪音。想配着节拍器练一段简单的旋律,把这两页开在两个标签页里就行。
原理与冷知识
- 钢琴的 88 个键是怎么定下来的。 现代标准钢琴从最低的 A0 到最高的 C8,正好 88 个键、七又四分之一个八度。这个数字在十九世纪末基本定型:再往低走,弦太长太粗,音高已经糊成一团听不出旋律;再往高走,弦短得几乎只剩「叮」的一声,音乐价值有限。所以 88 不是随便凑的整数,是「人耳还听得出音高」的一段有效区间。本页默认显示的 C3~C6 三个八度,正好覆盖大多数歌曲旋律所在的范围。
- 十二平均律是用「开十二次方」硬凑出来的。 把一个八度(频率翻倍)平均切成十二份,每一份就是 2 的十二次方根,约 1.059463。这样一来,任何调式移到任何调上音程关系都一样,转调才成为可能。代价是除了八度,没有一个音程是纯的:平均律的五度比纯五度窄约 2 音分,大三度更是比纯律宽了约 14 音分——弦乐四重奏和合唱团常常会不自觉地往纯律那边靠,这就是为什么同一个和弦用钢琴弹和用人声唱,听起来「干净程度」不一样。
- A4 = 440 Hz 是吵出来的,而且吵了很久。 十八、十九世纪各地乐团的标准音高差得很远,最低的一些管风琴在 400 Hz 上下,也有乐团用到 450 以上,同一份谱子在不同城市唱出来根本不是一个调。1939 年的国际会议定在 440,1955 年成为 ISO 标准(ISO 16,1975 年重新确认)。直到今天也不是铁板一块:不少欧洲乐团用 442 到 443,演奏巴洛克古乐时常常整体降到 415——正好比 440 低一个半音。
- 为什么中央 C 叫中央 C。 它既在标准 88 键钢琴的正中间附近,又正好卡在高音谱表和低音谱表之间——两个谱表中间那根加出来的短线上的那个音就是它。右手看高音谱表、左手看低音谱表,中央 C 是两只手交接的地方,所以它成了识谱的起点。
- 网页钢琴的声音是现搭出来的一条流水线。 按下一个键,页面做的是:算出这个音的频率 → 建几个振荡器分别振在基频和它的二、三、四倍上 → 把它们混进一个音量节点 → 给这个音量节点写一条包络曲线(五毫秒冲到最响,然后指数衰减)→ 接到扬声器。松开键时再写一条 0.3 秒收到零的曲线。整套东西没有一个字节的音频文件,所有波形都是当场算出来的。
- 为什么同时按的音越多,总音量要往回收。 十个音各自满音量叠在一起,波形峰值会超出数字音频的上限,结果是「削顶」——听起来又炸又脏。所以这一页按「同时响几个音」给总音量打一个折(按平方根收),和弦听起来才干净。这个动作在混音里有个更常见的名字叫限幅。
- 键盘吞键这件事,本来是为了省钱。 一块 104 键的键盘如果每个键都单独连一根线,成本和体积都受不了,于是厂商把它排成行列矩阵扫描,用二十几根线管一百多个键。代价就是某些组合会「撞车」:电路读到的信号有歧义,只好丢掉一个。加二极管做到全键无冲会贵一些,所以这项一直是游戏键盘的卖点。这也是弹键盘钢琴时按不满和弦的根本原因。
- 「跟着弹」为什么只放得下这几首老曲子。 旋律本身是受版权保护的,而且保护期很长。要内置进一个网页,只能挑确定进入公有领域的:十八世纪的法国童谣、贝多芬 1824 年写的主题、1857 年发表的圣诞歌……这些作者身故已久,谁都可以自由使用。流行歌、动漫曲、影视配乐一概不收,连《生日快乐》这种看起来人人会唱的曲子,因为它的版权状态在不同法域争议过好几轮,也一并排除在外。
想要自动伴奏、按一个键就出和弦、换十种音色,用电子琴模拟器:它和本页是两样东西——钢琴页专心弹,电子琴页左手管伴奏。