Week 8: Audio Project Documentation – Adam Chou

Link: http://imanas.shanghai.nyu.edu/~ac6596/Audio%20Project/

Description:

For the audio project, Kevin and I both had very different ideas on what to do, but thankfully were able to blend both ideas into a cohesive project. The project itself was easy to understand conceptually, but harder to implement in actuality. The main components were a text-box, keypresses, and buttons that would manipulate both visual and audio components. Kevin was to do the Textbox, audio, and CSS, while I was responsible for everything else. The main issues for me were figuring out how those should work in a project and practicing how functions, if/then statements, arrays, and booleans work in the code (we had very brief discussions on these).

Process:

We both worked on the code in different ways. I took many routes to experiment and put together the final project. Most of the idea, assets, and code to make sure the entire thing worked was done by me. Along the way, I learned how to register keypresses, utilize arrays for efficiency, use booleans in order to differentiate the keypress functions I made between the text-box inputs by Kevin, which was quite a trip. Within the entire week, it was a grueling process of going to dave and trying to figure out what exactly he told me conceptually. Sometimes I figured it out, sometimes I didn’t. it was an interesting process. 

To start with the example, I looked towards the key-down function encoded into javascript and then replicated code from online in order to call different functions. This turned out to be my undoing, however, as I didn’t really understand what I was doing. This I took to various fellows in order to fix.

Here are some of the things I learned in class that I feel I now have a better understanding of now: 

Array –

Boolean (true/false decision) + if/then statement (keypress/keydown_ –

Incorporating boolean + if/then decision tree –

One of the hardest things to overcome was user-testing, which made me reconsider having keypresses play audio, which was going to be a main part of the project and what was going to make the project more or a remixing platform. However, as user-testing was being conducted, the keyboard was often played too much with, causing the audio files to mix in a way that was destructive to people’s ears since there was so much sound. 

Because of this, I had to change the keypresses to just images only so that the problem would not happen again in case we had users experiment with our site during the presentation. However, I did leave the buttons to have some semblance of an interactive nature with audio. I didn’t really know what else to put through so I just had the same parts. 

Also, I didn’t think that there could be more buttons or sounds to put because it would ruin the rest of the layout. 

Post-mortem:

I think that our audio project met our initial goals, although one thing I would have wanted to add (an idea I had today) was to mainimg.src = math.floor(Math.random()); the keypresses so that each keypress I logged with a letter would put a random image from the array I made. However, due to time constraints, I did not wish to ruin my code to undesirable levels like I almost did today with the last minute edits, so I chose to hardcode from the array the given images. Additionally, Dave told me to use a focus function in javascript in order to enable keypresses to not register in the text-box, which I was unable to do before he left on Friday. So I hope that in my next project I can ask that if I need to use it. Other than that I think the project is quite seamless and up to my standards, given the week time constraint I took to working on the project.

Leave a Reply