Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Programmeren van een keyboard als muziekinstrument d.m.v. een QWERTY-toetsenbord  (gelezen 2197 keer)

Offline bart85

  • Lid
Om op de computer muziek te spelen, wil ik een programma schrijven. Het gaat om een piano oftewel een keyboard. Hiervoor wil ik een QWERTY-toetsenbord gebruiken. Als ik dan op een bepaalde toets druk is het de bedoeling dat dan een geluid word afgespeeld. Met de toets a een noot in C; Met de toets S, de noot D; Met de toets D, de noot E; enz.

Welke programmeertaal is hiervoor geschikt met welke modules?
Relying on complex tools to manage and build your system is going to hurt the end-users. [...] "If you try to hide the complexity of the system, you'll end up with a more complex system". Layers of abstraction that serve to hide internals are never a good thing. Instead, the internals should be designed in a way such that they NEED no hiding.

— Aaron Griffin

Offline bram103

  • Lid
Java of Python

Java: http://www.oracle.com/technetwork/java/index-139508.html
Python: https://wiki.python.org/moin/PythonInMusic

Dat zijn zomaar twee sites voor een begin, als je gaat googlen is er nog veel meer.

Met zowel Java als Python ben je niet beperkt tot Linux, ze worden beiden ook op o.a. Windows ondersteund.

Er zijn zeer waarschijnlijk nog veel meer talen die het predicaat 'geschikt' verdienen, hangt ook af van je persoonlijke voorkeur en ervaring.

Java of Python

Java: http://www.oracle.com/technetwork/java/index-139508.html
Python: https://wiki.python.org/moin/PythonInMusic

Dat zijn zomaar twee sites voor een begin, als je gaat googlen is er nog veel meer.

Met zowel Java als Python ben je niet beperkt tot Linux, ze worden beiden ook op o.a. Windows ondersteund.

Er zijn zeer waarschijnlijk nog veel meer talen die het predicaat 'geschikt' verdienen, hangt ook af van je persoonlijke voorkeur en ervaring.

Ik heb even meegekeken en met de combinatie Python en PyGame is zoiets al eens gemaakt. Het leuke ervan is dat de broncode gewoon op het net staat en wie weet levert dat weer een idee of 2 op :) Succes!
https://github.com/stemchan/virtual-piano/blob/master/piano.py
Ryzen 7 1700 16gb, RX 580 8gb, AOC 24" FreeSync scherm,  Corsair Strafe Red (mechanisch toetsenbord), 256GB SSD, 4 TB HDD. OS: Linux Mint

Offline bart85

  • Lid
Met onderstaande heb ik de sourcecode gedownload:
git clone git://github.com/stemchan/virtual-piano.gitEr zijn dependencies nodig:
NumPy, SciPy, PyGame, Scikits.samplerate
Hoe installeer ik deze dependencies?
Relying on complex tools to manage and build your system is going to hurt the end-users. [...] "If you try to hide the complexity of the system, you'll end up with a more complex system". Layers of abstraction that serve to hide internals are never a good thing. Instead, the internals should be designed in a way such that they NEED no hiding.

— Aaron Griffin

Offline bram103

  • Lid
De eerste 3 gewoon met Synaptic.
Scikits.samplerate: https://pypi.python.org/pypi/scikits.samplerate

Ik ben redelijk bekend met Java, met Python veel minder (zeg maar bijna niet) maar er moeten een boel mensen op het forum zitten die je verder kunnen helpen.

Offline bart85

  • Lid
Ik heb al wat gevonden. Er was al een programma kant en klaar. Het is vmpk, vkeybd in combinatie met amsynth en qjackctl. Alles via de package manager. Dus, zelf maken van een programma is niet nodig.
Relying on complex tools to manage and build your system is going to hurt the end-users. [...] "If you try to hide the complexity of the system, you'll end up with a more complex system". Layers of abstraction that serve to hide internals are never a good thing. Instead, the internals should be designed in a way such that they NEED no hiding.

— Aaron Griffin