用Python进行经典音效编程

6
很久以前,在一个遥远的星系中,有一些微型计算机运行着BASIC并拥有简单的音频命令,可以让机器发出各种奇怪和美妙的声音。
除了制造一些很棒的声音外,它还是一个非常有用的学习工具,因为您可以听到代码的结果。
我希望能够像BBC Micro那样拥有“包络”命令的机器的声音功能,但不必使用模拟器并学习或重新学习各种方言的BASIC的怪癖。
我也想避免制作midi或wav文件,而是想直接用代码制作声音。我尝试过winsound.Beep,但大约在4个音符后,音符之间的时间似乎变得随机,并且其功能与甚至像ZX Spectrum这样的东西相比毫不足道。
有人知道如何在Python中实现这一点吗?

你尝试过使用系统响铃转义码吗?(虽然它只有一个音调)? - muddyfish
这个之前的问题是否和你想要问的类似?https://dev59.com/iEfSa4cB1Zd3GeqPA-IP - Steven Correia
系统响铃似乎是单调的本质,除非它能以某种方式改变音调? - Robin Andrews
关于链接Scorreia,遗憾的是它并不是我想要的。我想要避免读写文件,并直接从运行代码中产生有趣的声音。 - Robin Andrews
尽管它只是单声道,但 winsound.Beep 应该能够解决问题,但在播放一系列音符时,时间会出现偏差,并且每次运行相同的代码时都会以不同的方式跳过音符。 有人知道如何修复这个问题吗? 到目前为止,最接近我需求的是 pyknon,通过此页面找到:http://pedrokroger.net/pascals-triangle-sound/ - Robin Andrews
2个回答

1

我认为audioop包是在Python中最接近你过去所拥有的东西。它非常低级,但这正是重点。你可以将其用作构建自己复古声音库的基础。


听起来不错,虽然我希望使用声音来帮助我学习Python并且同时享受乐趣。看起来这个乐趣可能得等一下,除非已经有其他人完成了这项工作。我正在参加的在线课程上有人已经取得了一些进展:http://www.codeskulptor.org/#user40_PTiKkUrfBd8jmqn.py - Robin Andrews
你可以在一天内学会Python语言。有趣的部分是学习库,比如这个。 - ThatAintWorking

0

我已经写了Python和NumPy入门,你可以在其中学习如何用Python创建正弦波并直接播放。

虽然不是非常高级,但它很适合初学者。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接