201 lines
7.3 KiB
HTML
201 lines
7.3 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||
<html>
|
||
<head>
|
||
<meta content="text/html; charset=ISO-8859-2"
|
||
http-equiv="content-type">
|
||
<title>Campcaster Architecture</title>
|
||
<meta content="<22>kos Mar<61>y" name="author">
|
||
</head>
|
||
<body>
|
||
<h1>Preface</h1>
|
||
This document is part of the <a href="http://campcaster.campware.org/">Campcaster</a>
|
||
project, Copyright © 2004 <a href="http://www.mdlf.org/">Media
|
||
Development Loan Fund</a>, under the GNU <a
|
||
href="http://www.gnu.org/licenses/gpl.html">GPL</a>.<br>
|
||
<ul>
|
||
<li>Author: $Author$</li>
|
||
<li>Version: $Revision$</li>
|
||
<li>Location: $URL$</li>
|
||
</ul>
|
||
<h1>Scope</h1>
|
||
This document describes the architecture of Campcaster.<br>
|
||
<br>
|
||
This document contains embedded <a
|
||
href="http://www.w3.org/Graphics/SVG/">SVG</a> figures, thus an SVG
|
||
capable browser is needed to view it, or an SVG plugin like <a
|
||
href="http://www.adobe.com/svg/">Adobe's SVG Viewer</a>.<br>
|
||
<h1>Architecture</h1>
|
||
<br>
|
||
<object type="image/svg+xml" name="architecture" data="Architecture.svg"
|
||
width="700" height="550"></object>
|
||
<br>
|
||
UML diagrams in <a
|
||
href="http://www.gentleware.com/products/descriptions/ce.php4">Poseidon
|
||
2</a> format are available in a <a href="LiveSupport.zuml">Poseidon
|
||
project file</a>.<br>
|
||
<br>
|
||
The Software architecture is discribed on a <a
|
||
href="SoftwareArchitecture/index.html">different page</a>.<br>
|
||
<h2>Scheduler</h2>
|
||
The <a href="Scheduler/index.html">scheduler</a> is responsible to
|
||
execute playlists.<br>
|
||
<h2>Local storage</h2>
|
||
The <a href="LocalStorage/index.html">local storage</a> holds locally
|
||
available audio clips<br>
|
||
<h2>Media archive</h2>
|
||
The <a href="MediaArchive/index.html">media archive</a> is a
|
||
centralized media archive holding audio clips
|
||
and storing metadata.<br>
|
||
<h2>Authentication</h2>
|
||
The <a href="Authentication/index.html">authentication</a> component
|
||
provides basic authentication functionality.<br>
|
||
<h2>Playlist editor</h2>
|
||
The <a href="PlaylistEditor/index.html">Playlist editor</a> component
|
||
is the user interface tool to create playlists.<br>
|
||
<h1>Feature - component mapping</h1>
|
||
This section contains a mapping from the features listed in section 3.3
|
||
the original Campcaster proposal to the components that fulfill these
|
||
features.<br>
|
||
<h2>Campcaster Feature List</h2>
|
||
For convenience the features listed in section 3.3 of the Campcaster
|
||
proposal are quoted below, with their original section numbers.<br>
|
||
<h3>3.3.1 Intuitive User Interface</h3>
|
||
<p>Campcaster will feature an
|
||
easily-localizable and intuitive user interface that draws on the
|
||
applicants’ extensive previous project experience.</p>
|
||
<h3>3.3.2 Storing Metadata</h3>
|
||
<p>Most audio formats allow the storage of
|
||
some information inside the media file itself. However, this feature
|
||
was developed primarily to handle music tracks, storing information
|
||
on artist, title, record, genre, track number and so on. It is
|
||
impossible to store essential information like the language of an
|
||
audio file – essential for spoken word productions, such as
|
||
educational or news material.</p>
|
||
<p>Campcaster will use existing open
|
||
standards, such as RSS feed standards in XML format, to store all
|
||
information needed to describe a file sufficiently. Additionally,
|
||
this metadata information will fully support the Unicode format,
|
||
making the database of metadata available to all character sets and
|
||
fully searchable.</p>
|
||
<h3>3.3.3 Automation and Scheduling</h3>
|
||
<p>Campcaster will provide a scheduler,
|
||
allowing stations to fill parts of the radio schedule with automated
|
||
broadcasts. Throughout automated broadcasting times, the station will
|
||
still be able to deliver advertisement, generating income while
|
||
minimizing the running costs. Longer times of daily broadcasts via
|
||
automation also help the station to make its frequency known in the
|
||
community.</p>
|
||
<h3>3.3.4 Playlist Management</h3>
|
||
<p>Small radio stations in the developing
|
||
world mainly use playlists generated by audio player software such as
|
||
MusicMatch, Windows MediaPlayer or WinAMP. Such simple playlists
|
||
provide no more information than a list of file names, and are
|
||
inaccessible for full text search. As mentioned above, Campcaster
|
||
will use the potential of XML metadata in Unicode to manage and
|
||
archive playlists.</p>
|
||
<h3>3.3.5 Proof of Broadcast</h3>
|
||
<p>Proof of broadcast is essential to
|
||
establish serious business relationships with advertisers.
|
||
Campcaster will provide accurate and detailed log files stating the
|
||
precise time each item was broadcast over the system. In a
|
||
radio-network context, the proof of broadcast tool developed by MDLF
|
||
in conjunction with Radio 68H in Indonesia will be used to aggregate
|
||
and analyze logs created by individual Campcaster installations.</p>
|
||
<h3>3.3.6 Mixing Local Audio Sources</h3>
|
||
<p>A producer running Campcaster in a
|
||
studio will be able to mix audio files (e.g. reports, music,
|
||
jingles), phone calls and the microphone into a live broadcast.</p>
|
||
<h3>3.3.7 Mixing Local and Remote Sources</h3>
|
||
<p>If connected to the Internet, and given
|
||
enough available bandwidth, Campcaster will be able to play local
|
||
files (stored on the system’s hard disk), remote files (stored
|
||
anywhere on the Internet) or include audio streams from the Internet
|
||
as part of the local transmission – all of which could also become
|
||
part of a playlist.</p>
|
||
<h3>3.3.8 Remote Control of Transmitter Locations</h3>
|
||
<p>A radio reporter/producer will be able
|
||
to remotely access all of Campcaster’s scheduling features over
|
||
the Internet using a standard web browser. She will be able to upload
|
||
audio programs as well as create playlists and schedule transmission.</p>
|
||
<h2>Feature - component mapping</h2>
|
||
The following table associates features with components.<br>
|
||
<table width="100%" border="0" cellspacing="2" cellpadding="2">
|
||
<tbody>
|
||
<tr>
|
||
<th colspan="2" valign="top">feature<br>
|
||
</th>
|
||
<th valign="top">component<br>
|
||
</th>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.1</b><br>
|
||
</td>
|
||
<td valign="top">Intuitive User Interface<br>
|
||
</td>
|
||
<td valign="top">Playlist editor<br>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.2</b><br>
|
||
</td>
|
||
<td valign="top">Storing Metadata<br>
|
||
</td>
|
||
<td valign="top">Media archive<br>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.3</b><br>
|
||
</td>
|
||
<td valign="top">Automation and Scheduling<br>
|
||
</td>
|
||
<td valign="top">Scheduler<br>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.4</b><br>
|
||
</td>
|
||
<td valign="top">Playlist Management<br>
|
||
</td>
|
||
<td valign="top">Scheduler, Playlist editor<br>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.5</b><br>
|
||
</td>
|
||
<td valign="top">Proof of Broadcast<br>
|
||
</td>
|
||
<td valign="top">Scheduler<br>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.6</b><br>
|
||
</td>
|
||
<td valign="top">Mixing Local Audio Sources<br>
|
||
</td>
|
||
<td valign="top"><br>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.7</b><br>
|
||
</td>
|
||
<td valign="top">Mixing Local and Remote Sources<br>
|
||
</td>
|
||
<td valign="top">Local storage, Media archive, Scheduler,
|
||
Playlist editor<br>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td valign="top"><b>3.3.8</b><br>
|
||
</td>
|
||
<td valign="top">Remote Control of Transmitter Locations<br>
|
||
</td>
|
||
<td valign="top">Scheduler, Playlist editor<br>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<br>
|
||
<br>
|
||
</body>
|
||
</html>
|