An Integrated Source Transcoding and Congestion Control Paradigm for Video Streaming in the Internet Proposed by R. Puri, K.W. Lee, K. Ramchandran and V. Bharghavan Presented by Felix Agenda Introduction LIMD/H Congestion Control MD-FEC Transcoder Performance Summary Discussion Introduction More and more video traffic are using best-effort and unreliable channel service (eg. UDP) because of its low delay feature Explicit TCP-friendly Congestion Control policy is required to achieve fairness with other TCP flows Introduction Two questions: How to control the transmission rate? How to control the video source to adapt to the transmission rate? LIMD/H Congestion Control LIMD (Linear Increase Multiplicative Decrease) r : sending rate f : fraction of packet loss in the last period If f = 0, r r + a If f > 0, r r * (1-b) Typically, (a, b) = (1, 0.5) LIMD/H Congestion Control Problems of traditional LIMD React identically and aggressively to any kind of packet loss, both congestion induced and non-congestion induced. Even if the channel bandwidth is invariant, the sending rate fluctuates greatly LIMD/H Congestion Control LIMD/H (LIMD with History) h : a history factor If f = 0, r r + a, and h 1 If f > 0, r r *(1 – b’*h), and h 2h b’ should be small to reduce the variation of sending rate LIMD/H Congestion Control MD-FEC Transcoder Layered or Multi-Resolution (MR) source coding is a common coding method to provide quality/bit-rate scalability Raw Video Stream Multiresolution (MR) Source Coder .. Base Layer Enhancement Layer 1 Enhancement Layer 2 Enhancement Layer N MD-FEC Transcoder Problem of MR coding Different quality layers have different importance Prioritized Eg. The client receiving packets of layers [0, 1, 2, 4] will only get quality as just receiving [0, 1, 2] However, the network treats every packet, no matter which layer it belongs to, identically Non-prioritized Loss of lower layers’ packets makes some other successfully transmitted higher layers’ packets useless. Low robustness in a lossy channel MD-FEC Transcoder MD-FEC Transform a prioritized MR bit-stream to nonprioritized MD (Multi-Description) stream with additional redundancy (using FEC) MD-FEC Transcoder Step 1: Partition a MR bit-stream to N layers and split the ith layer into i equal parts R0 R1 R2 Ri-2 Ri-1 2 3 i … 1 2 RN-1 … … 1 RN-2 3 N … … i-1 i MD-FEC Transcoder Step 2: Adopt (N, i, N-i+1) Reed-Solomon code to the ith layer and form N packets as follows: 1 2 … i … N Packet 1 FEC 2 … i … N Packet 2 .. . FEC FEC … i … N Packet i FEC FEC … .. . FEC … N Packet i+1 FEC FEC … FEC … N Packet N MD-FEC Transcoder Optimization on Ri, i=0…N Notations: qi(N) : probability that i+1 out of N packets are delivered to the destination D(r) : Distortion function of rate r Distortion R0 R1 … Ri … RN-1 Rate MD-FEC Transcoder Cont’ Problem statement: Minimize the expected distortion ED: E is the distortion encountered when the source is represented by zero bits MD-FEC Transcoder Cont’ The total rate Rt equals: Thus constraints to the optimization problem are: Performance Summary Simulations have been done to show the variation of sending rate and PSNR upon variation in network capacity and random losses MD-FEC can maintain a smooth PSNR LIMD/H can adapt to the variation of network bandwidth quickly while reducing the rate fluctuation induced by random losses and channel probing Discussion The MD-FEC is a novel technique to add robustness to many layer coding schemes LIMD/H congestion control mechanism can provide low variation in transmission rate while guaranteeing inter-traffic fairness However, the delay caused by explicit endto-end feedback and FEC operations may affect the performance of the system