Information Technology Reference
In-Depth Information
Figure 12. MSL code example
Series net is [
Fanout mix is [ SineSource src1,
SineSource src2 ],
Sum sum,
AudioSink dac
]
do [ (Math.rand() * 10000)+100 => net/mix/src/frequency
] every 2beats using TempoTimer
do [ (net/mix/src2/frequency + 400) % 10000
=> net/mix/src2/frequency
] every 0.5s using SystemTimer
run net run
chine learning techniques that require significant
computational resources. Processing time is a
major bottleneck. For example, the number of
pieces utilized in the majority of existing work
in audio MIR is at most a few thousand files.
Computing audio features over thousands of
files can sometimes take days of processing. The
dataflow architecture of MARSYAS facilitates
partitioning of audio computations over multiple
computers. Using a declarative dataflow specifi-
cation approach the programmer can distribute
audio analysis algorithms with minimum effort.
In contrast, distributing traditional sequential
programs places a significant burden to the
programmer who has to decide which parts of
the code can be parallelized and deal with load
distribution, scheduling, synchronization and
communication.
There are two standard data communication
protocols used on the Internet: transmission con-
trol protocol (TCP) and user datagram protocol
(UDP). TCP provides reliability mechanisms to
ensure that all packets are received exactly in
the order they are sent; on the other hand, UDP
provides no such mechanisms but is significantly
faster due to less overhead. UDP is therefore the
protocol of choice for real-time streaming ap-
plications where data is time critical.
MARSYAS supports both the UDP and TCP
protocols. In order to send data to another machine,
a NetworkSink MarSystem is simply inserted
somewhere in the “flow” of a Composite Mar-
System . In order to receive data a NetworkSource
MarSystem is inserted. Control flow and data flow
are managed separately so that controls can be
changed from the sender and propagate through
the system. The idea is that the user can oper-
ate several “worker” machines and the view of
the distributed system is abstracted as one large
Composite MarSystem .
For the experiments described in this section a
feature vector consisting the means and variances
of smoothed Mel-Frequency Cepstral Coefficients
(MFCC) as well as STFT-based features such as
spectral centroid and rolloff was used. The data
consists of 30-second audio clips and a single
35-dimensional feature vector is calculated for
each clip. The actual audio waveform samples
are transmitted over the network corresponding
to a scenario where all the audio files reside on a
single machine but multiple processing machines
are available (for example the computers of a lab
during nighttime). The experimentation was done
on a 100Base-T Ethernet local area network of
Apple G5 computers.
In the described experiments a dispatcher
node (computer) sends separate audio clips from
an audio collection to each worker node in the
network. The job of a worker node is to simply
calculate features for each clip it receives and then
Search WWH ::




Custom Search