Home

Awesome

NodeFloyd

Here is an example of an Icecast-compliant server written in JavaScript and NodeJS. The current setup uses nTunes to request and play all the "Pink Floyd" songs in my iTunes library. The script could be tweaked to stream any kind of audio data to the Node server. The server is expecting (on stdin):

Installation

I won't bother publishing this simple example to the npm registry, but you can install a local version to hack on like this:

git clone git://github.com/TooTallNate/NodeFloyd.git
cd NodeFloyd
npm link --local

You will also need the external programs lame and oggenc installed and visible to your $PATH.

Usage

To launch the server simply invoke the NodeFloyd executable (available in your PATH after installation with npm), or ./decodeFromNTunes.sh from the root directory of the repo.

That will launch an HTTP (Icecast) server on port 5555. Go there on an HTML5 <audio> compatible web browser (try your smartphone!).