Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

An Icecast-compatible server written in NodeJS that streams non-stop "Pink Floyd"!

branch: master
README.md

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

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

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!).

Something went wrong with that request. Please try again.