View on GitHub

ickstream-docs

Public documentation about the ickStream Music Platform

Overview

To make it a bit easier for third party developers to keep their work updated with the most recent version of the open parts of the source code of ickStream we have decided to expose the source code through a git repository. The git repositories are hosted on github https://github.com/ickStream

All applications using the ickStream Music Platform requires a specific API-key, contact us for more information if you want to develop and ickStream based app and we will arrange so you get an API-key.

Repositories

ickStream P2P module

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-p2p.git cd ickstream-p2p

Pre-requisities:

To build it as a static module, just run:

make all

This will produce a static module:

lib/libickp2p.a

which you can link with your application.

If you don’t have libwebsockets header files installed on the machine, you can build it as follows and point to a specific location of libwebsockets header files

make all INCLUDES=-I../libwebsockets/lib

And to clean the build completely run:

make cleanall

ickStream iOS ickComm

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-ios-comm.git cd ickstream-ios-comm git submodule update --init --recursive

To build it you use the committed Xcode project and compile as normal through Xcode

ickStream Java wrapper for P2P module

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-java-p2p.git cd ickstream-java-p2p git submodule update --init --recursive

To build it you need to install maven and after that you can run:

mvn install

And to clean the build completely run:

mvn clean

ickStream Java Common module

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-java-common.git cd ickstream-java-common

There are a number of different modules

To build it you need to install maven and after that you can in each module directory run:

mvn install

And to clean the build completely run:

mvn clean

ickStream Java Samples module

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-java-samples.git cd ickstream-java-samples

There are a number of different modules

To build it you need to install maven and after that you can in each module directory run:

mvn install -DBUILD_ENVIRONMENT=linux

The possible values for the BUILD_ENVIRONMENT variable are:

And to clean the build completely run:

mvn clean

ickStream LMS plugin

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-service-lms.git cd ickstream-service-lms git submodule update --init --recursive

Pre-requisitites:

To build it you need to install maven and build the ickStream Java wrapper for P2P module as described above and then run:

mvn install -DBUILD_ENVIRONMENT=linux

The possible values for the BUILD_ENVIRONMENT variable are:

And to clean the build completely run:

mvn clean

ickStream Squeezebox player

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-squeezebox-player.git cd ickstream-squeezebox-player git submodule update --init --recursive

Pre-requisities:

To build it you need to setup a Squeezebox cross compile environment and after that you can run something like:

make dist

And to clean the build completely, you run:

make cleanall

ickStream Linux daemon player

Checkout code as follows:

git clone https://github.com/ickStream/ickstream-daemon-player.git cd ickstream-daemon-player

To build it you do as follows:

# Step 1: Build libwebsockets as described in its section on this page # Step 2: Build ickstream-p2p as described in its section on this page # Step 3: ICK_ROOT=`pwd`/../ickstream-p2p ./configure debug make

And to clean the build completely run:

make cleanall

libwebsockets

Checkout code as follows:

git clone https://github.com/ickStream/libwebsockets.git

Pre-requisitites:

To build it you do as follows

mkdir libwebsockets/target cd libwebsockets/target cmake .. -DWITH_SSL=0 make cd ../..

And to clean the build completely, you run:

rm -rf libwebsockets/target