*Streamers

Introduction

This page describes some P2P streaming software developed as examples and demos for the GRAPES library.

All the streamers implement an "epidemic" streaming protocol, typically based on a "push" strategy (every peer periodically sends a chunk to a neighbour).

In this first release, only video streams are supported and the chunkisation algorithm is currently very simple (1 chunk = 1 video frames). More complex and advanced chunkisation techniques will be integrated in the future.

Some highlights:

License

The streamers are released under the GPL license; they are all based on GRAPES, which is released under the LGPL license.

Installation

Get the most recent release:

get dependencies with:

make prepare

compile with:

make

Compilation Options

When compiling the streamer, some different options can be enabled/disabled as follows:

Usage:

The program runs either as a source or as a peer. The syntax is:

./dumbstreamer [-I <bind interface>] [-P <bind port>] [-i <known IP>] [-p <known port>] [-t <period>] [-c <chunks per second>] [-b <buffer size>]

Parameters and their [defaults]: