Inspiration
During the brainstorming phase, we decided to explore topics related to the strongest attributes of our team, which were something music-adjacent, as two of our members were both well-versed in the creation of music. So, we had a lot of options, from a therapeutic binaural beats application to...
What it does
It allows for recording, organization, and transferring of audio files recorded on a device in various formats. Making handling audio files on mobile phones an easier experience for professionals.
How we built it
We had an idea that we wanted to do something with music, so when we got started, I was working on the design/coding part of the project. Meanwhile, my partners Ezana and Shaz were focused on music production.
First of all, I started out with a mock UI design in Figma, iterating on various designs. Although, I made sure not to spend too much time and dived into the code immediately with the first goal of getting our recordings saved to a file, while using the flutter framework to allow for cross-platform functionality
Challenges we ran into
Musical Side
We were struggling at first to come up with a piece of music that would have the vibe of a hackathon. We tried many variations of sound selection and genres until the obvious answer became clear to us. We decided to go in the direction of EDM and Drum and Bass music that, as the name suggests, includes electronic elements, and what better fit for an event focused on computer science than an EDM beat?
Coding Side
We had a lot of issues with trying to display waveforms within the app. The issue was that, for some reason, our initial method of devising waveforms would not work with any file from the device itself. So, we had spent nearly an hour banging our heads against the wall until we realized that we were getting serious tunnel vision. The waveform issue wasn't as paramount at the stage of the project we were in, so we decided to move on to other stuff (best decision we ever made).
Aside from that, there were a lot of bugs, like not being able to read the right file path, errors when renaming objects, and even infinite loops.
Accomplishments that we're proud of
We ended up getting waveforms working, which was pretty satisfying, as well as adding more QOL (Quality of Life) features like animations and noise suppression.
We also accomplished a lot in the implementation of the vocals that were recorded using Apollo. The beat that accompanies the vocals of our fellow participants was being created at the same time that the actual programming of the application was being written. Our efficiency as a team was key to our success in completing the objective on time.
What we learned
We learned how necessary it is to take a few minutes to actually plan out a full course of action. So much time was spent deciding what should come next and then realizing that maybe it wasn't the right thing to prioritize. Although, it is a blessing in its own way, as it teaches you to dynamically re-prioritize your objectives to meet the goal.
What's next for Apollo
Being able to organize samples in folders and tags. Using a local file transfer protocol to transfer files between devices.
Built With
- dart
- fl-studio
- flutter
- riverpod
- visual-studio
Log in or sign up for Devpost to join the conversation.