Studienarbeit
Realisierung einer flexiblen Multicast-Audiostreaming-Quelle
Completion
2005/03
Students
Daniel Graupner
student
Enrico Minack
student
Advisers
Description (German)
Motivation
Radio-UNiCC, das Uniradio an der TU Chemnitz, sendet neben dem Unicast Internetstream auch
via Multicast im Studentennetz der TUC. Für den permanenten Sendeeinsatz (10h/tag 4Tage
die Woche ... steigend) hat sich derzeit nur ein Tool als praktikabel erwiesen. Der
LiveCaster von live.com. Dieses Tool hat allerdings einige entscheidende Nachteile (siehe
unten). Deshalb soll in dieser Studienarbeit ein Programm entwickelt werden, welches diese
Nachteile eliminiert und auch anwendungsspezifische Erweiterungen einführt.
Einsatzszenarien
* Radio Stationen, die Ihren Content bandbreitenschonend in lokale Netze (oder auch MBone)
einspeisen wollen
* Echtzeit-Nachrichtendienste
* Übertragung von Vorlesungen in z.B. Studentennetze, oder auch Schulungen in Firmennetze
etc.
Grundfunktionalität (grob)
Das Tool agiert als Multicast Quelle, die Pakete an eine MCast-Adresse verschickt. Es
müssen die Audiodaten (mp3, ogg) in rtp-Pakete verpackt werden und (bei entsprechender
Synchronisation) an die Gruppe gesendet werden. Der Hörer kann mit geeigneten Programmen
(realplayer, zinf, etc.) und der jeweiligen Multicast Adresse die Pakete empfangen und den
Audiostream rekonstruieren -> hören.
Weitere Anforderungen
* trotz Quellfunktion (push), soll das Tool wie ein klassischer Server agieren
(Daemonisierung, Signale, Konfiguration, Logfiles, Unterstützung einer Vielzahl von
Streams) um den administrativen Aufwand im dauerhaften Sendebetrieb möglichst gering zu
halten
* da der Server aktiv sendet ist es notwendig ein geeignetes Zeitmanagemant und
Steuerungsansätze zu entwickeln (wann wird gestreamt? wer darf welche "streams" wie
beeinflussen?)
* Vertrieb unter einer GPL ähnlichen Lizenz, die freie Nutzung durch dritte muß
gewährleistet sein
* beliebige Audioquellen wählbar (http-stream eines Unicast-Servers, Datei auf HDD, ...)
* Session Announcement (z.B. via SAP/SDP)
Entwicklungsansätze
In der Studienarbeit soll auch einige neue Aspekte untersucht werden:
* Nutzung des freien Formates (und qualitativ besser als mp3) OGG-Vorbis (wird bisher
durch kein Multicast-Tool unterstützt)
* Untersuchung von Möglichkeiten zur Realisierung von Authentifizierung, Authorisation und
Accounting mittels Verschlüsselung: gezielten Verteilung an bestimmte Hörer (Abonnements),
Anwendung: z.B. Kurse an denen nur zahlende Hörer teilnehmen dürfen, Verbreitung sensibler
Informationen an bestimmte Gruppe etc.
Das entstehende Tool soll insofern offen gestaltet werden, dass
Erweiterungen/Weiterentwicklungen einfach zu realisieren sind.
Existierende Produkte
Recherche hinsichtlich existierender Ansätze, u.a.
* liveCaster von live.com, liefert die oben beschriebene Grundfunktionalität, nichts
weiter
* kommandozeilenorientiert, kein Zeitmanagement -> Framework für Sendebetrieb notwendig
* kommerziell (30 Tage Testversion)
* diverse Conferencing-Tools (vic, vat aus den mbone tools)
o verfolgen anderes Konzept (andere Einsatzszenarien)
o gleiche Defizite wie auch bei liveCaster
o es gibt viele freie Bibliotheken, die sich dem Problem rtp, rtp+mp3 widmen (rtplib,
jrtplib, ortp, liveMedia ... )
+ liefern unterstützung bei Nutzung des RTP-Protokolls (liefern Stack)
+ einige unterstützen sogar mp3 in rtp direkt -> ABER kein OGG-Vorbis Support
+ stellen keine Lösung für beschriebene Szenarien dar -> helfen aber bei der
Realisierung
Aufgabenverteilung:
* Enrico Minack:
o AAA (gezielte Verteilung an best. Hörer)
o Recherche existierender Tools
o SAP/SDP
* Daniel Graupner:
o OGG-Vorbis Unterstützung
o Organisation Studienarbeit (subversion repository, groupware, etc.)
o Zeitmanagement/Servermanagement

