330 likes | 486 Views
Schemes for Video on demand. Yuan-Shiang Yeh. Outline. Introduction Previous Works Study Buffer Requirement Channel Adjustment Bandwidth reduction in multi-layer videos. introduction. True VoD Batch Patch Near VoD Fast Data Broadcasting Harmonic Boradcasting. Comparison. Objective.
E N D
Schemes for Video on demand Yuan-Shiang Yeh
Outline • Introduction • Previous Works • Study • Buffer Requirement • Channel Adjustment • Bandwidth reduction in multi-layer videos
introduction • True VoD • Batch • Patch • Near VoD • Fast Data Broadcasting • Harmonic Boradcasting
Objective • Bandwidth • Ex: FB -> Pagoda -> New Pagoda • Buffer Storage • Ex: PB -> PPB • Scalable (wide range) • Ex: FB -> UD • VCR Functionality • Ex: Staggered Broadcast -> SAM • Channel Adjustment • Ex: FB -> Seamless Channel Transition • I/O BANDWIDTH • Ex: FB -> SB
Harmonic Broadcasting Scheme • Parameters: • Movie length --- D (e.g., 120 minutes) • Consumption rate of the movie --- b (e.g., 10Mbps) • Size of the movie --- S = D*b • The movie is equally divide into N segments, and Si is the ith segment of the movie. • Viewer waiting time --- d • d = D / N D S1 S2 S3 S4 bandwidth d
Harmonic Broadcasting Scheme • Parameters • The ith segment of the movie Si is equally divided into i sub-segment(s) {Si, 1, Si, 2 --- Si, i} • Let the i sub-segment(s) of Si be put on a logical channel Ci, the bandwidth of Ci is b/i.
Harmonic Broadcasting Scheme The total bandwidth(B) allocated for the movie is as follows: Where HN is called the harmonic number of N B = b + b/2 + b/3 + b/4 = 2.083b HN = 1 + 1/2 + 1/3 + 1/4 = 2.083
S1 S1 S1 S1 S1 D S1 S2, 1 S3, 1 S4, 1 C1 B S4, 2 S3, 2 B S2, 2 S4, 3 S3, 3 S2, 1 S2, 2 S4, 4 S2, 1 S2, 1 S2, 2 S2, 1 S2, 2 C2 d S3, 1 S3, 3 S3, 2 S3, 2 S3, 1 S3, 1 S3, 2 S3, 3 S3, 1 C3 Bandwidth S4, 1 S4, 4 S4, 2 S4, 3 S4, 1 S4, 1 S4, 2 S4, 3 S4, 4 S4, 2 S4, 3 C4 Time
S1 S2 S4 S1 S1 S1 S1 S1 S1 S1 b Channel 1 S3 S2 S3 S2 S3 S2 S3 Channel 2 S5 S6 S7 S4 S5 S6 S7 Channel 3 Fast broadcasting scheme(FB) • In FB scheme, we divide a movie into 2k - 1 segments, k channels is needed. • Waiting time: d = D / 7 ( D: the video length )
D S1 S2 S2 S2 S2 S2 S7 d · · · C1 S1 S1 S1 S1 S1 S1 S1 S1 S1 · · · S2 S2 S2 S3 S3 S3 S2 S3 S2 S3 S2 S3 C2 · · · S4 S4 S4 S5 S5 S6 S6 S7 S7 S4 S5 S6 S7 C3
Pagoda Broadcasting Scheme Segment Sz needs to be transmitted at minimum frequency 1/(zd) C1 C2 C3 C2k C2k+1 …
Pagoda Broadcasting Scheme 4z = 40
Buffer Requirement - FB C1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 C2 2 2 3 2 2 3 3 2 2 3 3 3 2 2 3 3 C3 4 6 7 4 6 7 5 4 6 7 5 5 6 7 5 4 C4 13 15 13 15 14 14 9 11 12 9 11 12 8 10 8 10 Current segment 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 4 2 3 8 8 8 8 9 10 11 13 14 12 14 8 5 10 11 4 9 9 9 12 4 13 5 11 14 8 8 10 10 6 12 9 13 Buffer 7 5 9 11 14 12 6 10 13 11 7 6 14 12 9 13 10 12 7 11 14 10 13 11 12 13 14
Buffer Requirement - FB 1 1 1 1 1 1 1 1 2 2 3 3 2 2 3 3 4 6 7 5 6 7 5 4 13 15 14 9 11 12 8 10 Buffer Requirement = 7/15 0 5 7 1 2 3 4 6 28
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 3 3 2 2 3 2 2 2 3 2 2 2 3 3 3 2 4 6 5 7 6 4 5 7 6 6 4 5 5 7 4 4 7 10 11 15 14 11 12 13 10 8 9 12 13 8 15 9 14 9 Our permutation C1 C2 C3 C4 Current segment 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 4 2 3 6 6 7 8 9 10 11 12 13 15 15 8 8 8 8 10 12 13 15 9 11 Buffer 13 15 10 10 10 10 11 12 15 12 12 12 12 13
Buffer Requirement - ours 1 1 1 1 1 1 1 1 2 2 3 3 2 2 3 3 Theorem 1: Assuming that a video is equally divided into segments and allocated to n channels as Fast Data Broadcast did, our broadcasting schedule requires the minimum storage space. # 4 5 7 6 5 7 6 4 11 15 13 10 14 9 8 12 3 4 4 3 3 3 4 4 28
Bandwidth - Algorithm 1 • 1. Divide channels into slots. Channel i would broadcast segment i. • 2. For current segments k, find the slot with minimum wasted bandwidth. • 3. Suppose the slot is divided into x subslots ,then allocate the segment k to (x+k-1) to this slot. • 4. Repeat 2~3 until no free slots.
1. Divide into slots S1 C1 Broadcasting frequency = 1 C2 S2 free S3 free free C3
2. Find suitable slot Current segment = S4 S1 C1 1/2 * 1/2 - 1/4 = min C2 S2 free free free S3 free free C3
3. Allocate segments Current segment = S4 Num of sub-slot = 2 S1 C1 1/2 * 1/2 - 1/4 = min C2 S2 free free free S4 S5 S3 free free C3
4.Repeat step 2~3 S1 C1 C2 S2 S4 S5 S3 S6 S7 S8 S9 C3
Bandwidth - Algorithm 2 • 1. Divide free channel or slots with minimum wasted bandwidth for segment i. • 2. Allocate segment i into current slots. • 3. Repeat 1~2 until no enough free bandwidth.
Example for Algorithm 2 S1 free C1 Broadcasting frequency = 1 free C2 free C3
Example for Algorithm 2 S1 C1 C2 S2 S4 S5 S3 S6 free free free C3
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Base Layer 2 2 3 2 2 3 2 2 3 3 2 2 3 3 3 3 4 6 7 4 6 7 4 6 7 5 4 6 7 5 5 5 dummy 2 channels popular Enhancement Layer 1 2 2 2 1 3 1 3 1 2 2 1 3 1 3 4 6 7 4 6 7 5 5 4 6 7 4 6 7 5 5 1 channels Enhancement Layer 2 2 2 2 1 3 4 6 7 1 3 4 6 7 1 5 5
Delay in enhancement layer Delay Slots = k Frequency (Si) = 1/(i+k) Delay slots = 1 S1 S2 S7 1 1/2 1/7 1/2 1/3 1/8
Example Current segment = S2 Current segment = S1 Current segment = S3 S3 free S1 free C1 S2 free free C2 C3
Result – delay slots Channels = 6 Number of segment in FB scheme = 63