Statistics
| Branch: | Tag: | Revision:

streamers-build @ 0138b109

Name Size Revision Age Author Comment
  Installer ba24c59d over 6 years Luca Baldesi change default launcher for Windowns in order t...
  THIRDPARTY-LIBS 3eb0db69 about 6 years Davide Kirchner Fixed Makefiles for correct pjproject linking
  scripts 3fd0b87a almost 7 years Luca Baldesi add execution scripts for Windows and modified ...
.gitignore 188 Bytes b54320b3 over 6 years Luca Baldesi add RTP GRAPES support
.gitmodules 717 Bytes 0138b109 over 5 years Luca Baldesi update gitmodules to work with ans
ChunkerPlayer 0 Bytes fcd86a10 over 6 years Luca Baldesi add Streamers commit to solve the Mac execution...
Makefile 9.08 KB 3eb0db69 about 6 years Davide Kirchner Fixed Makefiles for correct pjproject linking
README 3.65 KB 8441e956 almost 9 years Csaba Kiraly makefile: change default target to dir, create ...
Streamers 0 Bytes a187aec6 over 6 years Luca Baldesi switch to devel branch of Streamers, with refac...
channels.conf 1.56 KB cefffaee almost 9 years Csaba Kiraly channels.conf: changing Iris test channel to H....
description-pak 408 Bytes 67733da4 almost 9 years Csaba Kiraly adding checkinstall package description file
setenv-gcc32 259 Bytes 986d5a5a over 6 years Luca Baldesi use push strategy for the source in order to r...
setenv-mingw 736 Bytes 3db6932f about 8 years Csaba Kiraly mingw32: add some autodetection code for the mi...

Latest revisions

# Date Author Comment
0138b109 02/27/2015 02:07 PM Luca Baldesi

update gitmodules to work with ans

3eb0db69 05/17/2014 07:40 PM Davide Kirchner

Fixed Makefiles for correct pjproject linking

39ca126e 04/15/2014 09:48 AM Luca Baldesi

fix building bugs

a187aec6 04/14/2014 03:11 PM Luca Baldesi

switch to devel branch of Streamers, with refactored topology

b54320b3 04/14/2014 12:20 PM Luca Baldesi

add RTP GRAPES support

87622653 04/14/2014 10:18 AM Luca Baldesi

add gitignore entries

986d5a5a 04/07/2014 07:43 AM Luca Baldesi

use push strategy for the source in order to reduce the first hop loss

8537715d 04/01/2014 02:29 PM Luca Baldesi

add source capability of registering acknowledgements for initial pushed chunks

ee042274 04/01/2014 01:32 PM Luca Baldesi

fix topology issue of the GRAPES incarnation

f67461e8 04/01/2014 09:37 AM Luca Baldesi

refactor code removing TMAN refernces

View all revisions | View revisions

README


This is PeerStreamer, a P2P Media Streaming framework written in C. Quick Start =========== Building -------- Run "make". A new folder will be created with the name PeerStreamer-. You will find all the executables in this folder. If you want to distribute binaries, you can run "make pack" to create PeerStreamer-.tgz and PeerStreamer--stripped.tgz. See the built-in help ("./streamer -h") for usage examples and options. Running a source ---------------- To run a source, the only thing you need is a media stream. If the stream is a video file, run is as e.g. ./source.sh -f video.avi If the stream is "live", coming from a device with its own timing, run it with the "-l" parameter as e.g. ./source.sh -l -f /dev/dvb/adapter0/dvr0 For more options, see the help ./source.sh -h Create a channels.conf file, distribute it to the users, and enjoy. As an alternative, you can also send the channels.conf to peerstreamer.org for inclusion in the channel list. Running a peer -------------- Start the player with ./player.sh You can also use your custom channels.conf. In this case, copy the channels.conf in this folder, and run the player as follows: ./chunker_player Detailed instructions ===================== PeerStreamer can be compiled in several ways, e.g. in a simple configuration that creates only one binary. It can also be compiled in more complex versions that include a streamer linked with a number of external libraries, as well as a custom made player application. Below we provide instructions for two versions, the simplest case and the most complex one. The first one is useful for developers to understand the system. The second one is more useful as an end-user version. Building and running the simple version (GRAPES I/O) ---------------------------------------------------- Compilation - - - - - - Create executables by running: make simple Running the source - - - - - - - - - 1, Start the source peer in one shell: Streamers/streamer-grapes -f ~/video/big_bunny_orig/big_buck_bunny_480p_stereo.avi -m 3 or ffmpeg -i ~/video/myvideo.avi -f nut -vcodec mpeg4 -b 500000 -o /dev/stdout | Streamers/streamer-grapes -f /dev/stdin -m 3 Running a peer - - - - - - - Building and running the complex version (chunkstream I/O) ---------------------------------------------------------- The complex version contains a separate chunker and player application. It also integrates with a number of external libraries, providing additional functionalities and performance. Compilation - - - - - - Create executables by running: make Running the source - - - - - - - - - The easiest way to start a source is to use the provided wrapper script: source.sh. See the Quick Start instructions for examples. If more control is needed, follow this procedure: 1, Start the source peer in one shell: Streamers/streamer-ml-monl-chunkstream-static -f tcp://127.0.0.1:7777 -m 3 2, In another shell, go to the Chunker's folder cd ChunkerPlayer/chunker_streamer 3, Start the chunker (after the source peer has been started!): ./chunker_streamer -i ~/video/big_bunny_orig/big_buck_bunny_480p_stereo.avi -a 128000 -v 500000 or ./chunker_streamer -i /dev/stdin -l -a 128000 -v 500000 Running a peer - - - - - - - The only think a peers needs to run is a channel list. This can either come from peerstreamer.org, or you can create and use your own. In the first case, just start the included wrapper script: ./player.sh This will download the most recent channel list and start playing. You can also create your own channel list (see the provided example channels.conf), and distribute it with the player. In this case, start the player with the following command: ./chunker_player

Also available in: Atom