libretime/campcaster/doc/model/index.html

201 lines
7.3 KiB
HTML
Raw Blame History

<!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 &#169; 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&#8217; 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 &#8211; 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&#8217;s hard disk), remote files (stored
anywhere on the Internet) or include audio streams from the Internet
as part of the local transmission &#8211; 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&#8217;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>