


You can find more about the hardware/software I used from the following links: The audio is generated in real time using a second-order difference equation that generates a series of time-domain output values. This code does not make use of any pre-recorded audio. That is, when you play a note on the MIDI keyboard, the script will detect the note using the MIDI functionality in PyGame and play the appropriate pitch based on which note you played using PyAudio. This project makes use of the PyGame and PyAudio packages within Python to detect MIDI events triggered from my Alesis Q49 MIDI keyboard and then output audio corresponding to the pitches played. To actually run the main MIDIKeyboardSynthesizer.py script, you will need to use the hardware/software specifically listed below. For a more detailed explanation of my project, please read the Report.pdf file. This README only covers a general overview of the different scripts that you will find in this repository. This is the README for my Python MIDI Synthesizer project, which I completed in Fall 2015 as part of EE4163 (DSP Lab) at the NYU Tandon School of Engineering with Professor Ivan Selesnick.
