Information Technology Reference
In-Depth Information
(b) The maximum lag in decoding, T L , and maximum advance in decoding, T E , are defined
as:
T L =
max
{
T DV ( i )
|∀
i
0
}
(10.6)
T E =
min
{
T DV ( i )
|∀
i
0
}
(10.7)
(c) The peak-to-peak decoding-time deviation is defined as
T DV =
T L
T E
(10.8)
Assume the bounds T L and T E are known, the time between the consumption of two video
blocks i and j ( j
>
i ) will be bounded by
max
{
(( j
i ) T avg
T DV )
,
0
}≤
t
(( j
i ) T avg +
T DV )
(10.9)
We use buffers at the client to absorb these variations to prevent buffer underflow and buffer
overflow during playback. Let there be L C =
Z ) buffers (each Q bytes) at the client,
organized as a circular buffer. The client starts video playback once the first Y buffers are
completely filled with video data. We prefill buffers before playback to avoid buffer underflow,
and reserve the last Z buffers for incoming data to avoid buffer overflow.
( Y
+
10.3.3 Buffer Needed to Prevent Underflow
Since all N S servers transmit data to a client concurrently, the client will be receiving N S
video blocks simultaneously. Hence Y must be multiples of N S . We let y
Y / N S and consider
groups of N S buffers in the follow derivations (i.e., group zero consists of blocks 0 to N S
=
1,
group one consists of blocks N S to 2 N S
1, and so on.).
Among the N S servers, let the earliest transmission for the first round start at time t 0 , then
the last transmission for the first round must start at time t 0 + δ
. Therefore, the time for video
block group i to be completely filled, denoted by F ( i ), is bounded by
f )
f + )
(( i
+
1) T F +
t 0 +
F ( i )
(( i
+
1) T F +
t 0 + δ +
(10.10)
where f + ( f +
0) and f ( f
0) are used to model the maximum transmission time devi-
ation due to randomness in the system, including transmission rate deviation, CPU scheduling,
bus contention, etc.
Since the client starts playing the video after filling the first y groups of buffers, the playback
time for video block group 0 is simply F ( y
1). From Section 10.3.2, setting T 0 =
F ( y
1)
then the playback time for video block group i , denoted by P ( i ), is bounded by
{
iN s T avg +
F ( y
1)
+
T E }≤
P ( i )
≤{
iN s T avg +
F ( y
1)
+
T L }
(10.11)
To guarantee video playback continuity, we must ensure that a video block group arrives
before playback deadline. In the worst-case scenario, the latest filling time must be smaller
than the earliest playback time, i.e.
max
{
F ( i )
} <
min
{
P ( i )
}
(10.12)
Search WWH ::




Custom Search