Inspiration

Ever work out at the gym and get a really unfitting slow song? We realized that it can be quite annoying, for example, if "Thinking Out Loud" played while running 10mph on a treadmill (not that Ed Sheeran isn't great.) Maybe instead that song should come on when you're laying in my bed, relaxing. It can throw off your pace to hear the wrong speed song at the wrong time. Therefore, we decided to make an app that solves the problem!

How it works

The plan was to make an app that measures your heart rate constantly and prepares a next song (or first song) to match your heart rate as closely as possible. This would include connectivity to devices like Fit Bit, and to streaming services like Spotify.

However, at the time of submission, it works by manually taking a heart rate via user input, and then using a pre-defined, local database of songs to randomly select a song close to that heart beat.

Challenges I ran into

We did not have the programming knowledge to connect the app to a real-time heart rate device, such as FitBit. As a consequence, it runs off of manual heart rate entries.

In addition, there was not enough time to learn how to implement the Spotify API, so it relies off of locally stored music instead.

We also did not have experience in a programming language usable for mobile app development, so we were forced to create a proof of concept "mobile-like" app.

These three points will be expanded upon if a positive reaction from users is received.

Accomplishments that I'm proud of

Eric:

  • Made a GUI for the first time (all my previous programs had been command-line).
  • Making the entire app work, for our experience level this was a very ambitious idea.

Sakada:

  • Learning how non-default libraries work, and learning how they all connect to make things work.
  • Learning how to structure external files using custom delimiters (such as our local song database).

What I learned

  • How to use the SFML library to create a simplistic GUI
  • How to work under such a constrained time limit and still create a viable product

What's next for BeatsPerMusic

  • Implementation of Spotify, and FitBit to achieve the app's full intended function.
  • Conversion to a mobile app language, to be actually deployed on mobile devices.

We know it's not much as it is, but it was a real learning experience for us, so regardless if we win or not, there's always next HackNYU!

Built With

Share this project:

Updates