查看原文
其他

用代码创造音乐!剑桥大学的这个开源项目又火了!!

小金 Github掘金计划 2023-02-02

你好,我是小金。发现了一个好玩的项目,可以通过编程方式来创作音乐,让程序员也能当一回音乐制作人,创造一个属于自己的音乐。

这个项目就是 sonic-pi ,出自英国剑桥大学计算机实验室。你可以通过它来制作古典、爵士、电子乐等任意风格的音乐。你还可以用它来探索各种不可思议的音乐形式,一切在于你的想象力。



这种创造音乐的方式不是弹奏弦乐或用棍子敲打东西,而是实时编写代码。

  • 项目地址:https://github.com/sonic-pi-net/sonic-pi

  • 官网:https://sonic-pi.net/

Sonic Pi 界面

Sonic Pi 有一个非常简单的音乐编码界面,如下图所示。



  • A - 播放控制

  • B - 编辑器控件

  • C - 信息和帮助

  • D - 代码编辑器

  • E - 首选项面板

  • F - 日志查看器

  • G - 帮助系统

  • H - 示波器查看器

Sonic Pi 案例

下面是一些简单的案例,你可以将其放入 Sonic Pi 中运行,看看效果如何。



闹鬼的钟声:

loop do
sample :perc_bell, rate: (rrand 0.125, 1.5)
sleep rrand(0, 2)
end

五声音阶哔哔声:

with_fx :reverb, mix: 0.2 do
loop do
play scale(:Eb2, :major_pentatonic, num_octaves: 3).choose, release: 0.1, amp: rand
sleep 0.1
end

海浪:

with_fx :reverb, mix: 0.5 do
loop do
s = synth [:bnoise, :cnoise, :gnoise].choose, amp: rrand(0.5, 1.5), attack: rrand(0, 4), sustain: rrand(0, 2), release: rrand(1, 3), cutoff_slide: rrand(0, 3), cutoff: rrand(60, 80), pan: rrand(-1, 1), pan_slide: 1, amp: rrand(0.5, 1)
control s, pan: rrand(-1, 1), cutoff: rrand(60, 115)
sleep rrand(2, 3)
end
end

另外,国外有一个小哥制作了一个视频来演示自己使用 Sonic Pi  制作音乐的过程,看着还挺有意思的。

Sonic Pi 学习资料

  • Sonic Pi 官方文档地址:https://sonic-pi.net/tutorial.html

  • Sonic Pi 中文文档:https://www.52cmajor.com/zhuanlan/58245555813351425

推荐

用心发掘优质开源项目,欢迎关注,欢迎点赞分享!

历史优质开源项目推荐地址:Github 掘金计划

  • 计算机基础:精选计算机基础(操作系统、计算机网络、算法、数据结构)相关的开源项目。

  • 神器工具 : 一些好用的插件、软件、网站。

  • 程序人生:编程经历、英语学习、延寿指南。

  • 项目实战 :精选实战类型的开源项目。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存