120 likes | 240 Views
Comparison of Two Synchronization Mechanism. Amy, Mei-Hsuan Lu CML/CSIE/NTU Mar. 27 ,1999. Synchronization. For Master Stream ET i (n) = MAX(D i + TS i (n) - TS i (1), A i (n)) D i is initialized as (lower-bounded by) initial delay Increase/Decrease D i dynamically Pure Time Control
E N D
Comparison of Two Synchronization Mechanism Amy, Mei-Hsuan Lu CML/CSIE/NTU Mar. 27 ,1999
Synchronization • For Master Stream • ETi(n) = MAX(Di + TSi(n) - TSi(1), Ai(n)) • Di is initialized as (lower-bounded by) initial delay • Increase/Decrease Di dynamically • Pure Time Control • Buffer Level Control • For Slave Stream • ETi(n) = MAX(DM + TSi(n) - TSi(1), Ai(n))
Pure Time Control • Decrease DMwhen DM + TSM (n) - TSM (1) > Th1 + AM (n) + PM (n) • Increase DMwhen DM + TSM (n) - TSM (1) + Th2 < AM (n) + PM (n) • Pi(n) = MAXS((AM (n)-AS (m))-(TSM (n)-TSS (m)))
Buffer Level Control • Increase DMwhen buffer level of some stream is smaller than Th3 • Decrease DMwhenbuffer level of all streams is larger than Th4
Comparison (1/2) • No Loss and Jitter < Initial Delay : Same • BLC can not recognize the following two scenario • Packet Delay too much or Sampling Rate Changes • Packet Loss • Application have to send silence frames even during a long period of silence.
Packet Loss in BLC Increase D Decrease D Th3 = 2 packets D = 90ms D = 60ms D = 60ms 1 270 Audio Frame 60 90 120 150 300 MasterStream 0 30 60 90 180 210 240 1 2 3 2 2 120 150 180 210 240 270 300 Time (ms) 0 30 60 90
Packet Loss in PTC Th2 = 2 packets ? DM + TSM (n) - TSM (1) + Th2 < AM (n) + PM (n) D = 60ms 1 270 240 Audio Frame 60 90 120 150 300 Master Stream 0 30 60 90 180 210 240 120 150 180 210 240 270 300 Time (ms) 0 30 60 90
Comparison (2/2) • BLC has to adjust Th3/Th4 when sampling rate changes • PTC keeps more parameters (e.g. Ai(n)) • BLC : when CPU is not fast enough, packets will accumulate not because of delay increase
Flow Control • Goal • Maintain equal encoding and decoding rate • Dynamic adjust transmit rate to utilize available resource • Mechanism • Buffer Control (Large Jitter) • A/V Eligible Time Control • Loss Rate Control
State Transition Diagram Loss Rate > Hi-TH, Dec. Enc. Rate 1.Recv. SpeedUp Req. Send SpeedUp Cfm. Inc. Encoding Rate 2. Recv. SlowDown Req. Dec. Enc. Rate Send SlowDwon Cfm 3. Loss Rate < Low-TH (Initial State) Network Bound1 Loss Rate < Low-TH (Initial State) Slave Initial State VideoIn Buf > Hi-TH, Dec. Enc. Rate, Send SlowDown Req. Master Initial State Loss Rate > Hi-TH Dec. Enc. Rate Loss Rate > Hi-TH Dec. Enc. Rate 1.Recv. SlowDown Req., Dec. Enc. Rate, Send SlowDown Cfm 2. Recv. SpeedUp Req. Inc. Enc. Rate, Send SpeedUp Cfm. Recv. SlowDown Req. Dec. Enc. Rate Remote Bound2 Local Bound3 HOL pkt ET pkts too small, Dec. Enc. Rate, Send SlowDown Req. HOL pkt ET pkts too small, Dec. Enc. Rate, Send SlowDown req. Recv. SpeedUp Cfm, Inc. Enc. Rate 1.Recv. SlowDown Cfm 2. Recv. SlowDown Req. & Req. Rate higher, Dec. Enc. Rate, Send SlowDown Cfm. CPU fast enough for a period, Send SpeedUp Req. Recv. SlowDown Cfm 1.Recv. SpeedUp Req 2. Recv. SlowDown Req. & Req. Rate lower WFSDC4 WFSUC5 Recv. SlowDown Req., Dec. Enc. Rate, Send SlowDown Cfm
How to Decrease Rate ? • Reduce encode rate (frame rate v.s. bit rate) • Packetize multiple audio frames in one packet • Send audio/video mixed in one packet • Turn off video
Audio Packetization • Tradeoff between Delay and Bandwidth Efficiency • Header Overhead : 14(Ethernet) + 20(IP) + 8(UDP) + 12(RTP) = 54 • Audio/Video mixed in one packet