SUZUKI MR-250

前言

最近摸出了吃灰了已久的布鲁斯口琴,这把口琴是我还在上高中时,幻想着成为一名安静的美男子而买的。但当时已是高三,毕竟要面对学生时期最大的BOSS——高考,这把口琴在把玩了不久之后,也被我收到了行李箱的最深处。

岁月是把杀猪刀,时隔五年,我悲伤的发现:我连一曲『Twinkle, Twinkle, Little Star』都不会吹了,更悲伤的是:我也许再也不能成为一个安静的美男子了。

在大学校园里养了四年,我似乎顺理成章的变肥了,也似乎顺理成章的变宅了,每当我看到「死肥宅」这三个字,我都会觉得我的人生基调已经被奠定了三分之二。

可是你可能要问了,这一段话跟本文有什么关系呢?其实是有的,你看:

                                                                  +----------------+
                                                                  | 半吊子的JS水平  |
                                                                  +----------------+
                                                                    |
                                                                    |
                                                                    v
+--------------+     +------------+     +-------------------+     +----------------+     +--------------+
|      宅      | --> |  ACG音乐   | --> | justice_eternal吧  | --> |    数字简谱    | --> | 简谱转钢琴曲  |
+--------------+     +------------+     +-------------------+     +----------------+     +--------------+
                                          ^                         ^
                                          |                         |
                                          |                         |
+--------------+     +------------+       |                       +----------------+
| 安静的美男子  | --> | 布鲁斯口琴  | ------+                       |   Audio API    |
+--------------+     +------------+                               +----------------+

流程图使用Graph Easy生成

正好最近看了一篇文章(是一系列的文章,可以借此了解一下Audio API),介绍了Web Audio API的一些内容和应用。于是就用我那半吊子的JS水平,写了这个小工具,来把数字简谱转为钢琴弹奏的声音。

但数字简谱本身有很大局限。为了方便初学者入门;同时为了方便记录和传播,只记录了音调而舍弃了与频率有关的信息。这使得数字简谱几乎只有听过原曲的人才能演奏,而即使听过的人要准确的演奏出来也不是一件容易的事。这种特点也使得数字简谱更适用于一些比较即兴的、不是太正式的场合和乐器。

而无旋律+钢琴+合成音,注定得出的结果会差强人意。结果也正是如此,单调的音节和单调的旋律,只能听个响了。不过既然都写出来了,那就发出来吧,说不定哪天能用得上呢🌝

小工具

 
 
 
 
下面的内容搬运自Github项目页的说明文档
!https://github.com/journey-ad/jianpu

JIANPU.js

利用Web Audio API将数字简谱转为钢琴曲

DEMO

关于数字简谱

数字简谱是简谱记谱法的一种更简化形式,相对于简谱仅保留了音调,而不记录旋律信息

规定如下:

由于数字简谱不记录旋律信息,因此不适合记录节奏复杂多变的乐曲,可善加使用暂停符来控制节奏

使用

jianpu('1234567[1]')
jianpu('1155665 4433221 5544332 5544332 1155665 4433221')

谱面示例

音调测试

((1))((#1))((2))((#2))((3))((4))((#4))((5))((#5))((6))((#6))((7))
(1)(#1)(2)(#2)(3)(4)(#4)(5)(#5)(6)(#6)(7)
1#12#234#45#56#67
[1][#1][2][#2][3][4][#4][5][#5][6][#6][7]
[[1]][[#1]][[2]][[#2]][[3]][[4]][[#4]][[5]][[#5]][[6]][[#6]][[7]]

小星星

1155665 4433221 5544332 5544332 1155665 4433221

两只老虎

1231 1231 345 345 565431 565431 2(5)1 2(5)1

上学歌

12315 66[1]65 66[1]563 653531231 12315 66[1]65 66[1]563 653531231

粉刷将

5353531 24325 5353531 24321 2244325 24325 5353531 24321

数鸭子

[1][1]553653 21231- 3-1-331 33565 6665444 23212 3-1-3-1 33566 [1]-5563 21235 [1]-5563 21231

哆啦A梦

(6)22#47#46 676#45#43
(7)335[#1][#1]7655#4(7)#123
(6)22#47#46 676#45#43
(7)335[#1][#1]7655#4(7)#132
7765676 3#4#536 763#4#536
7653[#1]76765 67#432

白金ディスコ

35653 23211- (6)12332122--
35653 23211- (6)12353211--
1(6)1-1121 1(6)1-1131-(5) (6)(5)(6)1 23211
1(6)1-1112 1(6)1-11131-(5) (6)123211--
11(6)1111 111121(6)(5)(6)1 123
11(6)1111 111121(6) 122-122 12123-5--

56235 (6)123(6)12 (6)123(6)11 (5)-132-123--
(6)123(6)12 (6)123521 (5)132 11--
(5)(6)-(5)(6) (5)(6)1232-
12-12 1231(6)11-
(5)(6)-(5)(6) (5)(6)1235321
(6)1-(5)(6) 1121211

致爱丽丝

[3][#2][3][#2][3]7[2][1]6 1367 3#57[1]3-
[3][#2][3][#2][3]7[2][1]6 1367 3[1]7
[3][#2][3][#2][3]7[2][1]6 1367 3#57[1]3-
[3][#2][3][#2][3]7[2][1]6 1367 3[1]7
67[1][2][3]5[4][3][2]4[3][2][1]3[2][1]7
[2][3][2][3][#2][3][#2][3][2][3][#2][3]7[2][1]6
13673#57[1]3
[3][#2][3][#2][3]7][2][1]6 1367 2[1]76

喀秋莎

(6)-(7)-1 (6)-1-(7)(6)(7)-(3) (7)-12-(7) 2221(7)(6)-
3-6-6 5-654-323-(6) 422-311 (7)(3)(3)1(7)(6)-
3-6-6 5-654-323-(6) 422-311 (7)(3)(3)1(7)(6)--
(6)-(7)-1 (6)-1-(7)(6)(7)-(3) (7)-12-(7) 2221(7)(6)-
3-6-6 5-654-323-(6) 422-311 (7)(3)(3)1(7)(6)-
3-6-6 5-654-323-(6) 422-311 (7)(3)(3)1(7)(6)

打靶归来

2525312 25251(7)(5)(6)1(5)
1(7)(6)(5)1561 56532(5)(6)(5)
35635 65312 22355535

别看我只是一只羊

[1][1][1][1]753 5---
[1][1][1][1]753 5[2]--
[3][3][3][3][2][1]6 4[2]--
7777653 35---
[1][1][1][1]753 5---
[1][1][1][1]753 5[2]--
[3][3][3][3][2][1]6 4[2]--
7777[1][2] [1]--

START_DASH

5552567656
#4#4#4#4#4#4 #4#45#4
552 567 6565 12
5552 567 656
#4#4#4#4 #4#45#4
5552 567 656
3[1]76 5#45
33#45 #456 223#4 567
67[1] 7655
67[1] 76567 7
----
37777 7765#4 26666 66567
37777 7765#4 223#45 6[1]7
37777 7765#4 26666 66[1]77
[3][#4][5]3#45[#4][5][6]#456
[#4][5][6]656 23#45567
[1]33 36 5#4#45
----
(7)3#465 3#45 #456
----
26666 66543 15555 55456
26666 66543 11234567

旅の途中

#1#24#44 #1#23#43
333#2(7)(#5)-
#1#24#44 #1#23#43
333#2(7)3-

#5#5#5#5#43#2#2#1#2
#43#2#1#2(7)(#5)-
3#4#5#5#5#5#43#2#2#1#2
3#43#2#136#5-

1#1#2#1 1#1#2#1
#23#5#4 #13#5#4
#56[#1]7 3#46#5
3#4#5#46#5#2-

#1#1#1#23#4
#1#1#1#23#4#5#46#5-

2#24#2 2#24#2
4#4#6#5 #2#4#6#5
#67[#2][#1] 4#57#6
#4#5#6#57#64-

#2#4#6#57#6#2

远い空へ

(7)(6)(7) #4#1 
2#1(6)(7) #123676 
(7)- #46#1 (6)(7)-
#4#1(7) #4#1 
2#1(6)(7) #123676 
(7)- #46#1 (6)(7)-
(6)#1(7) #467 676 3#46#12 
23#4 #43#43 23#456#67[#1]-
7-676 3#46[#1][2][3][#4] 
[#4][3][2][#1] 6[#1][2] [#1]7#67[#1] [#4][3][2][#1]6#47

成都

---(5)1 23533 (5)1 21(6)(5)
(5)1 23635 32 1252
35 5356[1]6 32 1233
35 533211 (5) 21311---

(5)1 23533 (5)1 21(6)(5)
(5)1 23655 21 1252
35 535[1]66 32 11233
35-- 32(6)1- 1-21--

--35 553566311 1253
35 53566311 (5)231
(5)(6)1 12233 356 56523
12 12(6)232 12222365

断桥残雪

3 33 212223(6) 23(5) 1(7)(7)(5)3---
3 33 212223(6) 23(5) 1(7)(7)(3)(6)---
3 33 212223(6) 23(5) 1(7)(7)(5)3---
3 66 21223(6) 235 5321(6)---
[1]33[1]77[1] 52653 1(6)(6)123 777663
[1]33[1]776 652653 1(6)(6)123
3332(7)(7)(7)(3)(6)

第三方内容

作品名 音源文件 原作者
Berklee samples v.4 Berklee samples v.4 metasj