Specifications
Receive MP3
data from
server
Increment the
receive
pointer
Res et the
pointer if it is
past the buffer
boundary
Is the
buffer set
to refill
Is it full
Start the
decoder
Calculate the
buffer size and
send it to
Hyper T erminal
If buffer is empty
send indiactor to
HyperTerminal
and set the buffer
to refill
Is the
buffer
full
Send indicator to
Hyper T erminal
and wait for there
to be room in the
buffer for another
receive.
No
Yes
No
Yes
Yes No
Figure 19 Program to play MP3 data that refills buffer if buffer empties
The results of this test were not very promising. The buffer emptied very quickly and
more time was spent not playing music then playing music. What was worse this model
was far from realistic, the network has a chance to catch up while there is no decoder
requesting data, then a brief period of them both happening. If it was working properly
they would both be happening together all the time. So the answer to the second
question was that there was going to have to be a massive improvement in the design
for it to start working.
39










