Main Page | Modules | Class Hierarchy | Class List | File List | Class Members | File Members

MuSE :: Multiple Streaming Engine



MuSE is an application for mixing, encoding, and network streaming of sound. It relies code that has been written with modularity and reusability in mind. Actually the engine can play MP3 or OGG files, mix them together up to an amount of 6 input streams and then reencode them together and stream them to the network again.

It can also produce multiple encoded streams at the same time, and save the encoded audio to a local file.

Streams produced by MuSE can run on various servers: icecast 1 and 2, litestream, darwin (with icecast emulation), shoutcast and theoretically any other protocol supported by libshout.

MuSE can read its own MP3 streams (and mix them, and restream them, and...), but also a large number of audio players can do: xmms, freeamp, winamp, itunes, winzozz media player and probably more.

In its application form, MuSE offers two allready implemented interfaces to be operated in realtime and a slick commandline interface. This documentation is useful to who wants to reuse or tweak MuSE's code, if you are not a programmer (and you don't want to become one) you are not really interested in all the details documented here. Nevertless, reading here might give you a picture about some unexplored possibility of audio streaming ;)

A good place to start from is the Stream_mixer class, which is the main interface to interact and send asynchronous commands to the engine while its running. In fact the API declared in the jmixer.h file is the one used by the interactive user interfaces.

A useful implementation example can be found in muse.cpp

MuSE engine is being developed and hereby documented in the hope to provide the Free Software community with user friendly tool for network audio streaming and a high level interface for programming automatic radio tools.


the MuSE Engine is Copyright (C) 2000-2004 Denis Rojo aka jaromil -

the GTK-2 MuSE interface is Copyright (C) 2002-2004 Antonio Radici aka nightolo -

the Ncurses MuSE interface is Copyright (C) 2002-2004 Luca Profico aka rubik -

MuSE and all its interface source code is free software; you can redistribute it and/or modify it under the terms of the GNU Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

MuSE source code is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Please refer to the GNU Public License for more details.

You should have received a copy of the GNU Public License along with this source code; if not, write to: Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

Generated on Mon Apr 25 12:22:38 2005 for MuSE by doxygen 1.3.4