2015-08-28 51 views
6

很久以前,在一个远离星系的地方,有一些运行BASIC的微型计算机,并且有简单的声音命令,使得机器以各种怪异和奇妙的方式发出哔哔声和嘶嘶声。Old School Sound Programming in Python

除了制作一些优秀的声音,它也是一个非常有用的学习工具,因为你可以听到你的代码的结果。

我很想能够像BBC Micro一样使用它的“信封”命令来获得机器的声音功能,但不必使用模拟器并学习或重新学习BASIC各种方言的所有怪癖。

我也想避免产生midi或wav文件,但想直接用代码发出声音。我已经尝试过winsound.Beep,但是在大约4个音符之后,音符之间的时间似乎是随机的,而且与ZX频谱等功能相比,它的功能也没有什么优势。

有谁知道如何用Python做到这一点?

+0

您是否尝试过使用系统铃声转义码(它只有一个音调)? – muddyfish

+0

这是以前的问题,与您的想法相似吗? http://stackoverflow.com/q/956720/5066845 –

+0

系统钟似乎是单调的本质,除非它可以以某种方式改变音调? – Robin

回答

1

我认为audioop包是最接近你将在Python中获得的东西,你在过去的美好时光。这是相当低级的,但这就是关键。你可以使用它作为构建块来创建自己的复古声音库。

+0

听起来不错,虽然我希望使用声音来帮助我学习Python以及玩乐。看起来乐趣可能不得不等待,除非其他人已经完成了这项工作。我正在做的MOOC上的某些人已经取得了一些进展:http://www.codeskulptor.org/#user40_PTiKkUrfBd8jmqn.py – Robin

+0

您可以在一天中学习Python语言。有趣的部分是学习图书馆,就像这样。 – ThatAintWorking