ECE497 Project Music Server

Team members: Eric Ames, David Cooper

Executive Summary
This project will focus on creating a music server hosted on the BeagleBone. The server will contain a number of MP3 files which will be playable from the Beagle via either direct access or network accessed from another computer. Currently we also plan to include an option to stream Pandora, rate songs, skip songs, and a graphical browser interface.

WORKING

Currently the web browser works, and allows playback of songs through the beagle. It is also possible to request the current playlist. A Playlist is automatically generated upon server creation, and automatically seeks out mounted memory under /mnt/server_media.

TODO

1) Allow playable HD video? To be seen if the Beagle supports this.

2) Allow custom playlist creation by selecting specific songs in the browser GUI.

3) Allow uploading/downloading of songs from the mounted flash drive.

4) Enable pandora streaming by using pianobar, or some similar radio-stream service.

Opt1) Create a visually attractive GUI.

Opt2) Add client-side streaming of music as an option.

Packaging
Just about everything needed is in the repo, including the needed node modules. You will need to install PIANOBAR, NPM, and NODEJS on your own. 

Installation Instructions
Give step by step instructions on how to install your project.

1) Go to https://github.com/Guiltygate/beaglebone-classwork and clone the umbreon folder somewhere on your laptop. Note: Good luck getting this to run on Windows.

2) Install nodejs and Pianobar. Nodejs 0.6.12 and higher should be fine. You may also need to install NPM in order to find the dependencies for the different node modules included in the repo. Pianobar is a little tricky, still working with it to see what's needed.

User Instructions
Once everything is installed, how do you use the program? Give details here, so if you have a long user manual, link to it here.

Highlights
Here is where you brag about what your project can do.

Include a YouTube demo.

Theory of Operation
Give a high level overview of the structure of your software. Are you using GStreamer? Show a diagram of the pipeline. Are you running multiple tasks? Show what they do and how they interact.

Work Breakdown
Server Core: Done

Server Features: 20% complete.
 * Playlist - done
 * Playlist viewing - done
 * Playlist editing - TBF
 * Radio-Stream - TBF

Network access: Done

Interface: 50% complete

Optional - Client streaming: TBF

Future Work
Suggest addition things that could be done with this project.

Conclusions
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.