MAST (Multicast Audio Streaming Toolkit) is set of audio streaming tools using RTP over IPv4 and IPv6 Multicast/Unicast.
C C++ Shell
Latest commit 38c4ec5 Aug 20, 2010 @njh Updated website address

README

MAST - Multicast Audio Streaming Toolkit
========================================
Nicholas J. Humfrey <njh@aelius.com>

For the latest information on MAST, please see:
http://www.aelius.com/njh/mast/[]



What is MAST ?
--------------

MAST is an audio streaming broadcaster and client using RTP over
IPv4 and IPv6 Multicast/Unicast.

Unlike VAT and RAT, which are designed primerily for audio conferencing, MAST
is designed to be used for audio distribution and broadcast. It is currently limited 
to recieving a single audio source, unlike RAT which can mix serveral sources.

It supports many of the audio payload types in the Audio-visual Profile (RTP/AVP).

MAST is licenced under the GNU General Public License, see the file COPYING for details.



Tools in MAST
-------------

  mast_info        Display information about first RTP packet received
  mast_cast        Live Audio broadcaster that sources audio from JACK
  mast_filecast    Audio file broadcaster
  mast_record      Record/archive audio stream to audio file
  mast_rawcast     Directly broadcast a previously encoded audio file
  mast_rawrecord   Record/archive raw streams directly to disk


Supported Payloads
------------------

   0     8000Hz   Mono     u-law encoded
   3     8000Hz   Mono     GSM
   7     8000Hz   Mono     LPC
   8     8000Hz   Mono     A-law encoded
   10    44.1kHz  Stereo   Raw 16-bit linear audio
   11    44.1kHz  Mono     Raw 16-bit linear audio
   14    -        -        MPEG Audio (encoder only)


Details are here:
http://www.iana.org/assignments/rtp-parameters[]




Current Limitations
-------------------

- No mixer support (can only recieve single source).
- No sample rate conversion support.
- No upmixing/downmixing support.
- No clock skew error correction.
- mast_rawcast currently only supports GSM and MPEG Audio.
- due to problems with oRTP, only 8000Hz streams can be recieved.


Test Stream
-----------

You can listen to a test stream coming from Unversity of Southampton:

----------------------------------------------------------
njh@dobbie:~$ mast_info ff7e:0440:2001:0630:00d0:f001:9000:7e57
Receive address: ff7e:0440:2001:0630:00d0:f001:9000:7e57/5004

RTP Header
==========
Payload type    : 14
Payload size    : 526 bytes
Sequence Number : 60390
Timestamp       : 3219875130
SSRC Identifier : beef7e57
Marker Bit      : Not Set

Payload Details
===============
Mime Type       : audio/mpa
Clock Rate      : 90000 Hz

MPEG Audio Header
=================
MPEG Version      : MPEG-1 (Layer 2)
Mode              : Stereo
Bitrate           : 160 kbps
Sample Rate       : 44100 Hz
Error Protection  : No
Padding           : No
Extension Bit     : No
Copyright         : No
Original          : Yes
Samples per frame : 1152
Bytes per frame   : 522
----------------------------------------------------------

Please email me if you have any problems listening.

Please note that you *must* be connected to m6bone in 
order to receive IPv6 multicast (http://www.m6bone.net/[])