Project: Mo’ Music

As 2016 hit, i began a new project. I wanted to make a music server that is easily controllerable and can use all sorts of hacks and stuff to make my everyday life easier.

It really started with me and some buddies joking about making a netflix and chill button. I began thinking it through and realized how easy that would be. I already had a Raspberry Pi lying around, so better use it.

But what would i need for such a thing? Well to make said button, i kindof ended up going down a whole different path.. I realized that i used a lot of money on spotify each month, and these money could be used on bying actual records directly from the artists – that thought sounded beautiful in it self, so that sortof started it all. Anyway i made the following goals:

  • Be able to turn on/off my reciever
  • Play music from my Raspberry
  • Be able to control it from my phone and/or browser
  • Be able to download songs from Youtube and/or other sites
  • Show statistics about what music i listen to the most, so i can buy records from those people.

Well that’s a long time ago so i’ve created a lot of features at this point, but i want to document the journey onwards, and i needed some guides when i was making this, so, to help anyone out there, i am going to document what i’ve done, and record future effords. Maybe that will help someone, or atleast give interest to start hacking/building themselves..! So this is simply to start off this journey. However, for reference, the features i have at this point is as follows (but not limited to):

  • Download songs from Youtube (To our NAS(Network Access Storage))
  • Play songs from MPD (Music Player Daemon) from our NAS
  • Search on Youtube and download songs
  • Control the reciever
    • Turn on/off
    • Change channel
    • Turn up/down volume
  • Control it via a simple API (Application Programming Interface)
  • Control said API with a Python controlled webserver
  • Have a nice webinterface to control said API even more
  • Be able to do this from any network (Portforwarding etc)
  • “Let’s chill”-button that plays sweet jazz (!!)
  • Make Alarms
    • Play a random song from a specific playlist
    • Set alarms (which days of the week, and when)

 

I still have plenty of goals that needs to be completed, but i will explain them as they are created.

 

Anyway – Stay tuned!