Popularity
4.6
Declining
Activity
0.0
Stable
129
3
12

Programming language: Go
License: MIT License
Latest version: v1.3.0

dudeldu alternatives and similar packages

Based on the "Server Applications" category.
Alternatively, view dudeldu alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of dudeldu or a related project?

Add another 'Server Applications' Package

README

DudelDu

DudelDu is a simple audio/video streaming server using the SHOUTcast protocol.

Features

  • Supports various streaming clients: VLC, ServeStream, ... and most Icecast clients.
  • Supports sending of meta data (sending artist and title to the streaming client).
  • Playlists are simple JSON files and data files are normal media (e.g. .mp3, .nsv) files on disk.
  • Can be used as a stand-alone server or embedded in other Go projects.
  • Supports HTTP basic user authentication.

Getting Started (standalone application)

You can download a pre-compiled package for Windows (win64) or Linux (amd64) here.

You can also pull the latest docker image of DudelDu from Dockerhub:

docker pull krotik/dudeldu

Create an empty directory, change into it and run the following to start DudelDu:

docker run --rm --user $(id -u):$(id -g) -v $PWD:/data -p 9091:9091 krotik/dudeldu -host 0.0.0.0 <playlist>

The container will have access to the current local directory and all subfolders.

Demo

DudelDu comes with a demo playlist. After extracting DudelDu switch to the directory examples/demo. Run ./run_demo.sh (Linux) or run_demo.bat (Windows) to start the server.

Open a browser and view the demo.html in the examples/demo directory. To access the demo streams you are prompted for a username and password. The credentials are:

username: web
password: web

You can also point your favourite audio streaming client (e.g. VLC) to the streaming URL:

http://localhost:9091/bach/cello_suite1

The demo includes also a small video in the Nullsoft Streaming Video format (NSV). To see it point a video streaming client (e.g. VLC) to:

http://localhost:9091/trailer/big_buck_bunny

Note: By default you can only reach the streams via localhost. Use the -host parameter with a host name or IP address to expose it to external network peers.

Command line options

The main DudelDu executable has the following command line options:

DudelDu x.x.x
Usage of ./dudeldu [options] <playlist>
  -?    Show this help message
  -auth string
        Authentication as <user>:<pass>
  -debug
        Enable extra debugging output
  -fqs int
        Frame queue size (default 10000)
  -host string
        Server hostname to listen on (default "127.0.0.1")
  -loop
        Loop playlists
  -port string
        Server port to listen on (default "9091")
  -pp string
        Prefix all paths with a string
  -shuffle
        Shuffle playlists
  -tps int
        Thread pool size (default 10)

Authentication can also be defined via the environment variable: DUDELDU_AUTH="<user>:<pass>"

Building DudelDu

To build DudelDu from source you need to have Go installed (go >= 1.12):

Create a directory, change into it and run:

git clone https://devt.de/krotik/dudeldu/ .

You can build DudelDu's executable with:

go build ./server/dudeldu.go

Building DudelDu as Docker image

DudelDu can be build as a secure and compact Docker image.

  • Create a directory, change into it and run:

    git clone https://devt.de/krotik/dudeldu/ .
    
  • You can now build the Docker image with:

    docker build --tag krotik/dudeldu .
    

License

DudelDu source code is available under the MIT License.


*Note that all licence references and agreements mentioned in the dudeldu README section above are relevant to that project's source code only.