Progress
So far this week was a rather productive week for my work on the project. To begin with I helped the group finish the version of the project that would be viable for the midterm demonstration demo. This involved adding the last of my two modules for this stage of the project to the pipeline. Those included the wave table sample fetching portion and the mixing of all of the samples that had been fetched. Next after the midpoint demo which we feel went rather well I worked on getting adding a few of the features that are necessary for moving the project from where it is right now to its final stage. This included most importantly adding the ability to play multiple notes at the same time. This affected primarily one area of the pipeline and that is the note control module. The reason that this is a difficult task to implement is that it involves remembering the order that keys were pressed down in and properly updating that order should a key be lifted in a different order than the order it was put down. Furthermore a few more wavetable shapes are looking to be added to the project. These include a square wave and a sawtooth wave. Once these two waveshapes are confirmed to be working we will begin to add other shapes such as ones with specific harmonics stressed and a few random ones. Additionally I derived a symbolic equation for determining the incremental value of the base note of each note. This is useful because I can supply it to Hailang so that he can make the incrementation module be parameterized to be independent of the actual frequency that the system is running on.
Scheduling
According to the new schedule that was created as part of the interim midpoint demo I am still on track for the work that needed to be completed. The only issue is that one of the weeks for doing work coming up is Carnival which hopefully will not conflict too heavily with progress on the project.