An Icecast-compatible server written in NodeJS that streams non-stop "Pink Floyd"!
JavaScript Shell
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


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):

  • Raw PCM Audio Data
  • 2 Channel
  • 16-bit samples
  • 44,100 samples per second
  • Little-endian


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://
cd NodeFloyd
npm link --local

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


To launch the server simply invoke the NodeFloyd executable (available in your PATH after installation with npm), or ./ 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!).