yomguy / DeeFuzzer

Light and instant media streaming client for web radios and TVs written in Python
https://github.com/yomguy/DeeFuzzer
GNU General Public License v3.0
143 stars 30 forks source link

.. image:: https://github.com/yomguy/DeeFuzzer/raw/master/doc/img/logo_deefuzzer.png

|version|

.. |version| image:: https://img.shields.io/pypi/v/DeeFuzzer.svg :target: https://pypi.python.org/pypi/DeeFuzzer/ :alt: Version

DeeFuzzer is a light and instant application for streaming audio and video over internet. It is dedicated to communities who need to easily create web radios, web TVs, live multimedia relays or personal home radios, with metadata management and other cool features.

Features

Because our aim is to get DeeFuzzer as light as possible it is NOT capable of re-encoding or transcoding media files for the moment.

News

0.9.0

0.8.3

0.8.0

0.7.4

0.7.3

0.7.2

0.7.1

0.7

0.6.6

0.6.5

Installation

DeeFuzzer has now only been well tested on Linux, but should work on any other platform. You would then need to install libshout3 and liblo libraries for it. On Windows, an install inside Gygwin should work well.

To install it, say on Debian, do::

sudo apt-get install python3-pip python3-dev cython3 python3-liblo \
                 python3-mutagen python3-pycurl python3-yaml \
                 python3-mysqldb libshout3-dev librtmp-dev liblo-dev \
                 libcurl4-openssl-dev libmariadb-dev-compat

Then::

sudo pip3 install deefuzzer

Or to upgrade::

sudo pip3 install -U deefuzzer

If you have some version problems with the installation, please also try in a virtualenv.

As a streaming client, the DeeFuzzer needs a local or remote streaming server like Icecast2 to do something::

sudo apt-get install icecast2

Usage

deefuzzer CONFIGFILE

where CONFIGFILE is the path for a XML or YAML config file. For example::

deefuzzer example/deefuzzer.xml

or::

deefuzzer example/deefuzzer.yaml

To make the deefuzzer act as a deamon, just play it in the background::

deefuzzer example/deefuzzer.yaml &

Note that you must edit the config file with right parameters before playing.

Documentation

Development

Everybody is welcome to participate to the DeeFuzzer project!

We use GitHub to collaborate: https://github.com/yomguy/DeeFuzzer

Clone it, star it and join us!

Authors

License

This software is released under the terms of the GNU GPL v3. as described in the file LICENSE.txt in the source directory or online https://github.com/yomguy/DeeFuzzer/blob/master/LICENSE.txt

Aknowledgements

This work is inspired by the great - C coded - Oddsock's streaming program: Ezstream. Since I needed to patch it in order to modify the playlist (randomize for example) and make external batch tools to create multiple channels, I decided to rewrite it from scratch in python.

Some parts of this work are also taken from another Parisson's project: Telemeta (see http://telemeta.org).