dudeldu

module
v0.0.0-...-2446470 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 24, 2016 License: MIT

README

DudelDu

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

Build status Code coverage Go Report Card Go Doc

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 standalone server or embedded in other Go projects.
  • Supports HTTP basic user authentication.

Getting Started (standalone application)

You can download a precompiled package for Windows (win64) or Linux (amd64) here.

The server comes with a demo playlist. Extract the files and go into the directory. You can run the demo playlist with the command:

dudeldu.exe demo\demo_playlist.dpl

Running the command without any parameters will give you an overview of all available parameters. Point your favourite audio streaming client (e.g. VLC) or even a browser (Firefox works for me) 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.

Building DudelDu

To build DudelDu from source you need to have Go installed. There a are two options:

Checkout from github:

Create a directory, change into it and run:

git clone https://github.com/krotik/dudeldu/ .

Assuming your GOPATH is set to the new directory you should be able to build the binary with:

go install devt.de/dudeldu/server
Using go get:

Create a directory, change into it and run:

go get -d devt.de/common devt.de/dudeldu

Assuming your GOPATH is set to the new directory you should be able to build the binary with:

go build devt.de/dudeldu/server

License

DudelDu source code is available under the MIT License.

Directories

Path Synopsis
src
devt.de/common/bitutil
Package bitutil contains common function for bit-level operations.
Package bitutil contains common function for bit-level operations.
devt.de/common/cryptutil
Package cryptutil contains cryptographic utility functions.
Package cryptutil contains cryptographic utility functions.
devt.de/common/datautil
Package datautil contains general data handling objects and helper methods.
Package datautil contains general data handling objects and helper methods.
devt.de/common/errorutil
Package errorutil contains common error objects and functions.
Package errorutil contains common error objects and functions.
devt.de/common/fileutil
Package fileutil contains file based utilities and helper functions.
Package fileutil contains file based utilities and helper functions.
devt.de/common/httputil
Package httputil contains a HTTP/HTTPS Server which can be stopped via signals or a Shutdown() call.
Package httputil contains a HTTP/HTTPS Server which can be stopped via signals or a Shutdown() call.
devt.de/common/imageutil
Package imageutil contains utility function to create/manipulate images.
Package imageutil contains utility function to create/manipulate images.
devt.de/common/lockutil
Package lockutil contains a file based lock which can be used to lock file resources across different processes.
Package lockutil contains a file based lock which can be used to lock file resources across different processes.
devt.de/common/pools
Package pools contains object pooling utilities.
Package pools contains object pooling utilities.
devt.de/common/sortutil
Package sortutil contains common sorting definitions.
Package sortutil contains common sorting definitions.
devt.de/common/stringutil
Package stringutil contains common function for string operations.
Package stringutil contains common function for string operations.
devt.de/common/testutil
Package testutil contains common datastructures and functions for testing.
Package testutil contains common datastructures and functions for testing.
devt.de/common/timeutil
Package timeutil contains common function for time related operations.
Package timeutil contains common function for time related operations.
devt.de/dudeldu
Package dudeldu is a simple audio streaming server using the SHOUTcast protocol.
Package dudeldu is a simple audio streaming server using the SHOUTcast protocol.
devt.de/dudeldu/playlist
Package playlist contains the default playlist implementation.
Package playlist contains the default playlist implementation.
devt.de/dudeldu/server
DudelDu main entry point for the standalone server.
DudelDu main entry point for the standalone server.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL