Krad Radio/Concept

From MozillaWiki
Jump to: navigation, search
Basic concept of krad radio

As seen on the picture the layout of the software is rather simple. One or multiple streams come in, one or more streams can go out. The mixing/compositing of the streams can be controlled via different methods.

Supported codecs and clients

More detailed figure of the basic concept

This picture shows you what capture sources and codecs are supported by krad radio. The input can come from live video4linux2 (v4l2) or decklink-sources. X11 and wayland-capturing is supported as well as getting audio input via jack. Files can be in Matroska (mkv), Ogg or WebM-format and live input can also be achieved using these containers in HTTP-streams.

The output can be sent to wayland (video), jack (audio) or recorded as Matroska, Ogg or WebM video. Live streaming to another instance of krad radio or an icecast server is supported as well. Furthermore krad radio can be the streaming server for the clients to connect to so icecast is not needed to distribute the stream to several listeners/viewers.

You can control eveything via the shipped command line client. Basic functionality is provided via the built-in Web-UI. Bindings for your own programs and scripts are provided in C (client library), Rust, Ruby and Python. All commands are abstracted via a clean IPC-interface.