2015-08-28 2 views
6

Давным-давно в галактике были микрокомпьютеры, которые бежали BASIC и имели простые звуковые команды, из-за которых машина издавала звуковой сигнал и шипение всякими странными и прекрасными способами.Старое программирование звука в школе на 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

0

Я написал и Introduction to Python and NumPy, где вы научитесь создавать синус и воспроизводить его прямо с Python.

Это не очень причудливо, но, вероятно, вам нужно начать.