.. image:: https://github.com/yomguy/DeeFuzzer/raw/master/doc/img/logo_deefuzzer.png
|version| |downloads| |travis_master|
.. |travis_master| image:: https://secure.travis-ci.org/yomguy/DeeFuzzer.png?branch=master :target: https://travis-ci.org/yomguy/DeeFuzzer/
.. |version| image:: https://img.shields.io/pypi/v/DeeFuzzer.svg :target: https://pypi.python.org/pypi/DeeFuzzer/ :alt: Version
.. |downloads| image:: https://img.shields.io/pypi/dm/DeeFuzzer.svg :target: https://pypi.python.org/pypi/DeeFuzzer/ :alt: Downloads
DeeFuzzer is a light and instant application for streaming audio and video over internet. It is dedicated to communities who wants to easily create web radios, web TVs, live multimedia relays or personal home radios, with metadata management and cool 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.
updated example <https://github.com/yomguy/DeeFuzzer/blob/dev/example/deefuzzer_doc.xml>_ and the following news.
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 \ libshout3-dev librtmp-dev liblo-dev \ libcurl4-openssl-dev libmariadb-dev-compat
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
where CONFIGFILE is the path for a XML or YAML config file. For example::
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.
FAQ and Wiki <https://github.com/yomguy/DeeFuzzer/wiki>_
Documented XML configuration <https://github.com/yomguy/DeeFuzzer/blob/master/example/deefuzzer_doc.xml>_
Dummy XML for testing <https://github.com/yomguy/DeeFuzzer/blob/master/example/deefuzzer.xml>_
Generic YAML <https://github.com/yomguy/DeeFuzzer/blob/master/example/deefuzzer.yaml>_
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!
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
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).
Twitter: @yomguy @parisson_studio Expertise, Business, Sponsoring: http://parisson.com
Has trouble playing certain mp3 files from my media directory. online stream stops and station.log has the following:
2023-01-31 19:45:18,329 ERROR Station http://xx:8000/main: Could not get specific media type class for home/admindeefuzzer/music//ForYourLove.mp3
2023-01-31 19:45:18,330 ERROR Station http://xx:8000/main: Error: can't sync to MPEG frame
I also noted that double / at /music//ForYourLove.mp3 so thats a wrong log output, the name and permissions are given.
I love the implementation and its "lightness" ... One Feature I would really love, is beeing able to announce a metadata-change (when the next song starts playing) via TTS (Mozilla TTS, or Larynx. Like it is available in liquidsoap or radiobot)
Would something like that be feasible within DeeFuzzer?
related to #82
I am currently setting up a new webradio on my website and I would like my listeners to have the album title displayed on the Icecast status page or on their media player. I am streaming game soundtracks so having the album title is pretty much mandatory since soundtrack track titles aren't always very explicit as to which game they come from.
Is this possible using DeeFuzzer?
In the rss section, in the current.json the "next play time" for current track is 22:29:01. In the playlist.json the "next play time" for the first element is : 22:29:01 instead of 22:29:01 + duration of track 1.
Also on pypi: https://pypi.python.org/pypi?:action=display&name=DeeFuzzer&version=0.7
Researcher & engineer in audio, acoustics, data mining, web platforms, streaming, open source and commons for music. Music producer. Now at @Ircam-RnDGitHub Repository Homepage