Tuesday, March 11, 2014

Small Group Meeting #6 and Robot Jake

Here is a quick summary of our sixth small group meeting with Jay and Noam:

Right now, our team is in the middle of making a big decision - whether to stick with our iOS7 multipeer connectivity streaming model or to use a music streaming API like Rdio or Spotify that would allow us to avoid streaming local music files altogether (see our last post for the explanation behind our potential switch). 

Our modified architecture idea (using Rdio) that we explained to Jay and Noam is as follows:
  • We will still use multipeer connectivity to establish a connection between the phones over WiFi (we already have this working)
  • All phones will push the metadata of their local music files (song name, artist name, etc.) into a cloud database, and then all phones will pull this information to create a universal library
  • All users can use the universal library to add songs to the queue. The queue will be stored in a database that all phones pull from often.
  • When a song is about to be played in the queue, the phone connected to bluetooth (and with an Rdio subscription) will use the metadata of the song to make a call to Rdio and get the associated track key. Then, the phone connected to bluetooth will stream the song.
Jay and Noam were supportive of this idea, and told us that assuming that one phone in the car has an Rdio subscription (the phone connected to bluetooth) is completely acceptable while we are trying to reach an MVP. We are optimistic about this new approach, and if we pursue it, we will fortunately not have to scrap too much of our old code, particularly the UI and connectivity elements. 

Jay mentioned to us that we should keep making software development progress, but not to put too much pressure on the Thursday software demo. He also encouraged us to make a "New Hire Guide" - something to get a new hire up to speed on our project. Because we've done so much blogging, this may be as simple as creating an organized index into the different pieces of our blog.

--------------------------------------------------------------------------------------------------------

After our small group meeting, we had a chat (via robot!) with Jake Hercules from Audi to get his thoughts about our new approach.

Robot Jake


We explained our modified architecture idea to Jake, emphasizing that while we are not actually streaming local music files, the user experience will remain completely the same. Jake was excited about our idea, particularly because it would give the appearance of streaming local files without all of the associated latency issues. He also mentioned that the sound quality might even be better, because APIs like Rdio always have the most recently remastered versions of songs while many people's MP3s are 12 or 15 years old. However, he warned us to be mindful of how much data our application uses in the streaming calls to the Rdio API.



For the next couple of days we will be continuing development with our new Rdio-based architecture. Based on how much progress we make, we will either be demoing this new architecture or our old multipeer architecture for the software demo on Thursday.


No comments:

Post a Comment