Statistics
| Branch: | Revision:

streamers @ c9370421

Name Size Revision Age Author Comment
  Chunkiser 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
.gitignore 4 Bytes 9008e1d2 over 11 years Alessandro Russo Add .gitignore to remove .o file from status
Makefile 4.11 KB 6d85fd9d over 11 years Csaba Kiraly adding the IO option to makefile git-svn-id: h...
README.txt 3.16 KB 21ca4b73 over 11 years Luca Baldesi instructions updated git-svn-id: https://repos...
channel.c 310 Bytes 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
channel.h 197 Bytes 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
chunk_signaling.c 4.22 KB db206d2b over 11 years Csaba Kiraly removing cb_size from buffermap messages git-s...
chunk_signaling.h 266 Bytes 7f5321cb over 11 years Csaba Kiraly upgrading chunk_signaling to new GRAPES and rem...
chunkbuffer_helper.h 732 Bytes 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
chunklock.c 1.82 KB 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
chunklock.h 318 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
dbg.c 474 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
dbg.h 416 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
gpl-3.0.txt 34.3 KB 8fed7779 over 11 years Luca Baldesi added GPL git-svn-id: https://repository.napa-...
input-http.c 2.48 KB 8164ffbd over 11 years GiuseppeTropea UL integration with offerstreamer: in and out h...
input-stream-dummy.c 1.46 KB 421c2dc2 over 11 years Luca Abeni Move payload handling in a proper header file
input-stream.h 442 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
input.c 1.84 KB c9370421 over 11 years Csaba Kiraly input_open: adding parameters to pass back some...
input.h 409 Bytes c9370421 over 11 years Csaba Kiraly input_open: adding parameters to pass back some...
loop-mt.c 5.18 KB 26e2780e over 11 years Csaba Kiraly sigInit is not needed anymore, had been replace...
loop.c 4.21 KB c9370421 over 11 years Csaba Kiraly input_open: adding parameters to pass back some...
loop.h 320 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
measures-monl.c 11.3 KB 52ed89e5 over 11 years Csaba Kiraly set peer name in MONL git-svn-id: https://repo...
measures.c 1.41 KB 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
measures.h 708 Bytes 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
net_helpers.c 3.71 KB 919f2faa over 11 years Csaba Kiraly removed hostname based IP autodetect
net_helpers.h 258 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
out-stream-avf.c 4.01 KB 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
out-stream-dummy.c 1.18 KB 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
out-stream.h 145 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
output-http.c 1.02 KB 49026e80 over 11 years GiuseppeTropea UL offerstreamer integration: the 'port' variab...
output.c 3.73 KB e9397abf over 11 years Csaba Kiraly fix: measurement of initial chunk losses since...
output.h 271 Bytes 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
payload.h 1.64 KB 7f591208 over 11 years Csaba Kiraly adding some more copyright notices
streamer.c 5.21 KB 5dcfffbc over 11 years Csaba Kiraly exit more gracefully on SIGTERM (write gmon.out...
streaming.c 14.1 KB c9370421 over 11 years Csaba Kiraly input_open: adding parameters to pass back some...
streaming.h 812 Bytes c9370421 over 11 years Csaba Kiraly input_open: adding parameters to pass back some...
topology.c 2.92 KB 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
topology.h 324 Bytes 74a5d4ae over 11 years Csaba Kiraly Revert "Changed to build both with cc and g++" ...
utils.mak 267 Bytes ecf6e64a almost 12 years Luca Abeni Better selection of compile options and librari...

Latest revisions

# Date Author Comment
c9370421 07/25/2010 08:26 PM Csaba Kiraly

input_open: adding parameters to pass back some file descriptors

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1724 c54fac2e-1815-407e-9b96-088d06743913

db206d2b 07/25/2010 08:26 PM Csaba Kiraly

removing cb_size from buffermap messages

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1723 c54fac2e-1815-407e-9b96-088d06743913

3e3bb788 07/25/2010 08:26 PM Csaba Kiraly

removing max_deliver from accept messages

in previous versions, accept contained a max_deliver field,
which did not make much sense.

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1722 c54fac2e-1815-407e-9b96-088d06743913

7f5321cb 07/25/2010 08:26 PM Csaba Kiraly

upgrading chunk_signaling to new GRAPES and removing useless functions

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1721 c54fac2e-1815-407e-9b96-088d06743913

26e2780e 07/25/2010 08:26 PM Csaba Kiraly

sigInit is not needed anymore, had been replaced by chunkSignalingInit of GRAPES

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1720 c54fac2e-1815-407e-9b96-088d06743913

7eee10e4 07/25/2010 08:26 PM Csaba Kiraly

separate chunk generation from adding the chunk to the system

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1719 c54fac2e-1815-407e-9b96-088d06743913

685225b2 07/25/2010 08:26 PM Csaba Kiraly

split generated_chunk in two functions

deal separately with input and with adding the chunk to the system

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1718 c54fac2e-1815-407e-9b96-088d06743913

9e72961f 07/25/2010 08:26 PM Csaba Kiraly

fixing threaded: adding peers_init to loop-mt as well

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1717 c54fac2e-1815-407e-9b96-088d06743913

6d85fd9d 07/25/2010 08:26 PM Csaba Kiraly

adding the IO option to makefile

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1716 c54fac2e-1815-407e-9b96-088d06743913

ffcc70ad 07/25/2010 08:26 PM Csaba Kiraly

speed up scheduling a little bit by reversing chunk ID order

the change should not modify scheduler behaviour

git-svn-id: https://repository.napa-wine.eu/svn/napawine-software/trunk/Applications/OfferStreamer@1715 c54fac2e-1815-407e-9b96-088d06743913

View all revisions | View revisions

README


This is DumbStreamer, the dumb streamer!
As such, do not expect it to be smart...

Here is a quick'n'dirty, informal, description about how to compile
and test the thing (do not expect to find any information about what
the dumb streamer is, or how it works. If you need such information,
please drop me an email - ):

Ok, here we go...
- To download the DumbStreamer
git clone http://www.disi.unitn.it/~abeni/PublicGits/DumbStreamer.git
- To compile it:
cd DumbStreamer
make prepare
make
You can type "make FFDIR=<path to an ffmpeg build>" to compile a version
of the streamer with a minimal libav-based input module.
You can type "make DEBUG=WhyNot" to compile a "debug" version of the
dumb streamer (prints out a lot of crap and debug information, not really
useful in practice unless you are trying to hunt a bug).
You can type "make THREADS=YesPlease" to compile the multi-thread version
of the streamer. Not tested with libav*.
You can type "make GRAPES=<path to your grapes>" to use a different build
of GRAPES
- To test it:
First, I suggest to test the non-libav-based version. It generates
"fake" text chunks, which are useful for debugging
1) build as above (make prepare; make)
2) start a source: ./dumbstreamer -I lo
3) in a different shell, start a client: ./dumbstreamer -I lo -P 5555 -i 127.0.0.1 -p 6666
4) start another client: ./dumbstreamer -I lo -P 5556 -i 127.0.0.1 -p 6666
5) ...
Explanation: "-P <port>" is the local port used by the client (6666 by
default). Since I am testing source and multiple clients on the same
machine, every client has to use a different port number. "-i <IP addr>"
is the source IP, and "-p <port>" is the port number used by the source.
After this testing, I suggest recompiling with debug on, and with threads.
Test as above, and enjoy.
- To see something interesting:
You have to build a libav-based version:
1) cd /tmp; svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk ffmpeg
2) cd ffmpeg; ./configure; make -j 3; cd ..
3) git clone http://www.disi.unitn.it/~abeni/PublicGits/DumbStreamer.git
4) cd DumbStreamer; make prepare; make FFDIR=/tmp/ffmpeg
Now, prepare a (video-only) input file:
5) /tmp/ffmpeg -i <whatever.avi> -r 25 -an -vcodec mpeg4 -f m4v test.m4v
6) The input currently needs to be called "input.mpg", so
ln -s test.m4v input.mpg
Start the source. For the moment, you need to manually specify the rate
(will be fixed in the future):
7) ./dumbstreamer -I lo -t 40 -c 50
create a FIFO for the output, and attach a player to it:
8) mkfifo out; ffplay out
start a client:
9) ./dumbstreamer -I lo -P 5555 -p 6666 -i 127.0.0.1 > out
- Enjoy... ;-)

A lot of cleanup is needed, and the input module is still far from being
reasonable (but this is not our business ;-)
But you can now enjoy some video...

Remember! The DumbStreamer is dumb! Peers try to send chunks to the source...
Scheduling is blind...
All of this is very bandwidth inefficient. If you want to start more clients,
please increase the upload bandwidth of the source (dumbstreamer -t 40 -c 200,
or even more...).

Enjoy your streaming,
Luca

Also available in: Atom