2015-08-28 2 views
6

Il y a longtemps dans une galaxie lointaine, il y avait des micro-ordinateurs qui BASIC et ran eu simples commandes sonores qui ont fait le signal sonore de la machine et sifflent dans toutes sortes de façons étranges et merveilleux.Old School Programmation Python en son

En plus de quelques grands sons, il est également très utile comme outil d'apprentissage parce que vous pouvez entendre les résultats de votre code. J'aimerais pouvoir avoir la fonctionnalité sonore de machines comme la BBC Micro avec sa commande "enveloppe", mais sans devoir utiliser un émulateur et apprendre ou réapprendre toutes les bizarreries des différents dialectes de BASIC.

Je voudrais aussi éviter d'avoir à produire un fichier midi ou wav, mais je voudrais faire directement les sons avec le code. J'ai essayé winsound.Beep, mais après environ 4 notes, le temps entre les notes semble aller au hasard, et aussi la fonctionnalité n'est rien par rapport à même quelque chose comme un spectre ZX.

Est-ce que quelqu'un sait comment faire cela avec Python?

+0

Avez-vous essayé d'utiliser le code d'évasion du système (il y a seulement une tonalité)? – muddyfish

+0

Cette question précédente est-elle similaire à ce que vous avez en tête? http://stackoverflow.com/q/956720/5066845 –

+0

La cloche du système semble être l'essence même de la monotonie, à moins qu'elle puisse changer de hauteur en quelque sorte? – Robin

Répondre

1

Je pense que le paquet audioop est le plus proche que vous allez obtenir en python à ce que vous aviez dans le bon vieux temps. C'est plutôt bas niveau mais c'est le point. Vous pouvez l'utiliser comme éléments de base pour créer votre propre bibliothèque sonore rétro.

+0

Ça sonne bien, même si j'espérais utiliser le son pour m'aider à apprendre Python tout en m'amusant . On dirait que le plaisir devrait attendre, à moins que quelqu'un d'autre n'ait déjà fait ce travail. Quelqu'un sur un MOOC que je fais a fait de bonnes percées: http://www.codeskulptor.org/#user40_PTiKkUrfBd8jmqn.py – Robin

+0

Vous pouvez apprendre le langage python en un jour. La partie amusante est l'apprentissage des bibliothèques, comme celui-ci. – ThatAintWorking

0

I'ver écrit et Introduction to Python and NumPy où vous apprendrez à créer une sinusoïde et le lire directement avec Python.

Il est pas très chic, mais probablement vous permet de démarrer.