Kelly’s Status Report for 4/8

What did you personally accomplish this week on the project? Give files or photos that demonstrate your progress. Prove to the reader that you put sufficient effort into the project over the course of the week (12+ hours). 

As reiterated in Anna’s report, we have spent several hours this week trying to get our audio to process properly from the frontend to the backend. We have pinpointed an issue of the bytes from the audio file being corrupted and/or misread when we try to convert it to a wav file in our directory. 

Given the lack of resources to support real time audio between javascript and python with django and a very similar module with different methods in java, our research has proven to be limited in its scope. I looked into MediaRecorder to find what the standard sampling rate, number of channels, and sampling width that they support is. It was documented that they follow whatever the browser standard is and so I looked into chrome, which supports an audio sampling rate of 44.1kHz or 48kHz, 2 channels, and a sampling width of 16 bits, or 2 bytes. Setting these parameters when we save the .wav file locally just made the entire recording shorter than it is on the website and still noisy. The recording would go from 4 seconds on the webpage to half a second in the backend, which lead me to believe our sampling rate was wrong. However, after fiddling with the sampling rate, I would need to lower it an insane amount before the lengths started matching up. 

At this point, I was wondering if the bytes of audio data were being read in wrong, so I tried a variety of methods for reading the bytes into the .wav file to no avail. Given what we’ve researched as well as how little previous work is out there, I’m unsure that we will be able to make our current setup of converting the ‘blob’ object of audio bytes into a .wav file in python work with our module based PDA.   

 

Is your progress on schedule or behind? If you are behind, what actions will be taken to catch up to the project schedule? 

According to the Gantt chart, I should have finished PDA frontend integration this week, so I am behind and will need to cut into our slack weeks. 

 

What deliverables do you hope to complete in the next week? 

Next week, I hope to have a plan of moving forward either with the current setup or with a fallback option and some pursuit in whichever direction we decide on as a team.

 

Now that you are entering into the verification and validation phase of your project, provide a comprehensive update on what tests you have you run or are planning to run. In particular, how will you analyze the anticipated measured results to verify your contribution to the project meets the engineering design requirements or the use case requirements?

I spent a lot of my earlier days running pitch detection module accuracy tests in which I would feed in .wav files of known pitches as well as .wav files of me singing these pitches to determine accuracy of the pitch tracking algorithms on a users voice. In the future, once the pitch tracking is implemented into the website, I hope to perform latency tests to determine how fast the frontend is notified of a note change via the backend with our PDA.



Leave a Reply

Your email address will not be published. Required fields are marked *