Streaming stored video: challenges continuous playout constraint:once client playout begins,playback must match original timing ..but network delays are variable (jitter), so will need client-side buffer to match playout requirements other challenges: client interactivity:pause,fast-forward, rewind,jump through video video packets may be lost,retransmitted Multmedia Networking 7-11
Streaming stored video: challenges continuous playout constraint: once client playout begins, playback must match original timing … but network delays are variable (jitter), so will need client-side buffer to match playout requirements other challenges: client interactivity: pause, fast-forward, rewind, jump through video video packets may be lost, retransmitted Multmedia Networking 7-11
Streaming stored video: revisted constant bit rate video client video constant bit ejep anneinwno transmission reception rate video playout at client variable network delay client playout time delay client-side buffering and playout delay: compensate for network-added delay,delay jitter Multmedia Networking 7-12
constant bit rate video transmission C u m u a l t i v e d a a t time variable network delay client video reception constant bit rate video playout at client client playout delay buffered video client-side buffering and playout delay: compensate for network-added delay, delay jitter Multmedia Networking 7-12 Streaming stored video: revisted
Client-side buffering,playout buffer fill level, ←Q)+ variable fill playout rate. rate,x(t) e.g.,CBRr video server client application ←一buffer,size B→ client Multmedia Networking 7-13
Client-side buffering, playout Multmedia Networking 7-13 variable fill rate, x(t) client application buffer, size B playout rate, e.g., CBR r buffer fill level, Q(t) video server client
Client-side buffering,playout buffer fill level, +Q)+ variable fill playout rate, rate,x(t) e.g.,CBRr video server client application ←一buffer,size B+ client 1.Initial fill of buffer until playout begins att 2.playout begins at tp. 3.buffer fill level varies over time as fill rate x(t) varies and playout rate r is constant Multmedia Networking 7-14
Client-side buffering, playout Multmedia Networking 7-14 variable fill rate, x(t) client application buffer, size B playout rate, e.g., CBR r buffer fill level, Q(t) video server client 1. Initial fill of buffer until playout begins at tp 2. playout begins at tp, 3. buffer fill level varies over time as fill rate x(t) varies and playout rate r is constant
Client-side buffering,playout buffer fill level, ←Q)+ variable fill playout rate rate,x(t) e.g.,CBRr video server client application ←—buffer,size B→ playout buffering:average fill rate (x),playout rate (r): x<r:buffer eventually empties(causing freezing of video playout until buffer again fills) x>r:buffer will not empty,provided initial playout delay is large enough to absorb variability in x(t) initial playout delay tradeoff:buffer starvation less likely with larger delay,but larger delay until user begins watching Multmedia Networking 7-15
playout buffering: average fill rate (x), playout rate (r): x < r: buffer eventually empties (causing freezing of video playout until buffer again fills) x > r: buffer will not empty, provided initial playout delay is large enough to absorb variability in x(t) initial playout delay tradeoff: buffer starvation less likely with larger delay, but larger delay until user begins watching Multmedia Networking 7-15 variable fill rate, x(t) client application buffer, size B playout rate, e.g., CBR r buffer fill level, Q(t) video server Client-side buffering, playout