Home
Name Modified Size InfoDownloads / Week
README 2010-09-17 2.1 kB
Totals: 1 Item   2.1 kB 0
 _____           _ _       ____
|  __ \         | (_)     |  _ \
| |__) |__ _  __| |_  ___ | |_) | _____  __
|  _  // _` |/ _` | |/ _ \|  _ < / _ \ \/ /
| | \ \ (_| | (_| | | (_) | |_) | (_) >  <
|_|  \_\__,_|\__,_|_|\___/|____/ \___/_/\_\

	Version 1.0 - Stage: PLANNING

--------------------------------------------

INTRODUCTION

RadioBox is open-source broadcasting solution that relays on client-server architecture. It consists of media server that runs as a service and listens for socket connections of graphical interfaces (web access, Windows GUI, Linux GUI, etc...)



The main idea of a project is to create a free radio streaming platform. I have divided it in two components:

1. SERVER
I thought of Python based socket server that will take care of almost everything. It will have SQLite database in which will all data be stored (user accounts, library, statistics, etc..). 
Server will take care of current playlist. It will listen to some TCP port (for example let it be 2301). After user (GUI) connects to it and authenticate it will be possible to manage playlist, add rules (for example scheduling playlists, importing new songs to queue etc).

Here are some of the features I'm planning to implement:
* Scheduling playlists
* Output directly to soundcard or/and Shoutcast/Icecast streaming server
* WebJukebox (possibility to create users and give them credits so they can add songs to playlist)
* Playing jingles
* Schedule commercials
* Ability to remotely connect to server and stream from microphone to the station on-air


2. CLIENT
Client side should be only a interface that connects to a socket server and sends commands to it. It could be web based frontend (php based for example) or a rich GUI (WPF for example in Windows version)
Since everything is open source APIs for RadioBox server will be provided so basically everyone can create their frontend in their favorite programming language or platform (maybe smart phone access or something similar)


I'm just starting with this project. If you like my idea and have knowledge and will, please join me to make this project even better :)
Source: README, updated 2010-09-17