vic and NAVE K MayerPatel CS 294 9

  • Slides: 18
Download presentation
vic and NAÏVE K. Mayer-Patel CS 294 -9 : : Fall 2003

vic and NAÏVE K. Mayer-Patel CS 294 -9 : : Fall 2003

vic: Overview/Motivation • • Apply ALF principles to video conferencing Framework for composing applications

vic: Overview/Motivation • • Apply ALF principles to video conferencing Framework for composing applications Extensible UI Compression scheme CS 294 -9 : : Fall 2003

Tools vs. Toolkits • Composable tools better than API-based toolkits. – Small, highly optimized

Tools vs. Toolkits • Composable tools better than API-based toolkits. – Small, highly optimized functional units. – Glued together with scripting. • Application logic. – Video conferencing • vic - video tool • vat - audio tool • conference bus - coordination and control CS 294 -9 : : Fall 2003

Software Architecture • C++ classes that passed where possible ADU’s • Tcl used as

Software Architecture • C++ classes that passed where possible ADU’s • Tcl used as scripting language to glue them together in various ways. • See figure in paper. CS 294 -9 : : Fall 2003

Conference Bus • Key for scripting application semantics that cut across media types. –

Conference Bus • Key for scripting application semantics that cut across media types. – Synchronization – Floor control • Typed messages broadcast onto communication channel – Used local loopback multicast – Tools responded to messages in well known and possibly configurable ways. – Application logic implemented as just another participant in this conversation. CS 294 -9 : : Fall 2003

Are they right? • Discussion question: – Do composable tools embody ALF principles better

Are they right? • Discussion question: – Do composable tools embody ALF principles better than toolkits? CS 294 -9 : : Fall 2003

Conditional Replenishment • Key to the compression scheme. • Compare blocks to last time

Conditional Replenishment • Key to the compression scheme. • Compare blocks to last time block was sent. – Uses subset of pixels for comparison. Why? • Send only on “signficant” change. – Need a threshold for significant. • Send some blocks if they get old enough regardless if there was change or not. CS 294 -9 : : Fall 2003

CR Features • • Robustness to loss Localizes error Avoids persistent error Balances compression

CR Features • • Robustness to loss Localizes error Avoids persistent error Balances compression with CPU load – CR done in pixel domain before transform coding. – Doesn’t require decode operation on sender-side. – Are these design decisions still relevant? CS 294 -9 : : Fall 2003

Intra-H. 261 • Adapted existing H. 261 standard – All blocks intra coded –

Intra-H. 261 • Adapted existing H. 261 standard – All blocks intra coded – CR implemented via skipped blocks – RTP packetization standard already defined. – Intra-H. 261 was technically still valid syntactically as a subset of H. 261 CS 294 -9 : : Fall 2003

Intra-H. 261 as ALF • Decoder state checkpointed in RTP payload header. – Not

Intra-H. 261 as ALF • Decoder state checkpointed in RTP payload header. – Not mentioned in paper, but important to creating TDU independence • Dependency chains limited to missing block updates. – Localizes error. • CR timeout algorithm ensured eventual consistency. • Although compression weakens, performance under loss improves. CS 294 -9 : : Fall 2003

Weaknesses • What are the papers main weaknesses? CS 294 -9 : : Fall

Weaknesses • What are the papers main weaknesses? CS 294 -9 : : Fall 2003

NAÏVE: Overview/Motivation • Design new video codec with loss in mind. – Broadcast –

NAÏVE: Overview/Motivation • Design new video codec with loss in mind. – Broadcast – Any subset of packets should work. – Support instantaneous changes in send rate. – Graceful degradation of quality given loss. – Rapid joins. CS 294 -9 : : Fall 2003

Design Principles • Globalness – Every packet reconstructs entire frame. – Every packet adds

Design Principles • Globalness – Every packet reconstructs entire frame. – Every packet adds value to any previous packets from same frame. • Independence – No packet depends on any other. • Precludes inter-frame coding altogether. CS 294 -9 : : Fall 2003

Algorithm • Consider each image to be a multi-res pyramid. • Each pixel at

Algorithm • Consider each image to be a multi-res pyramid. • Each pixel at each resolution level given a confidence weight. • Start with some set of samples at highest resolution. • Push to create approximations of lower resolution levels. • Pull to reconstruct representation of higher resolution levels. CS 294 -9 : : Fall 2003

Sampling • Break image into blocks. • Each packet contains at least one sample

Sampling • Break image into blocks. • Each packet contains at least one sample from every block. • Cn contain more samples from some blocks. • Sample can come from levels 0, 1, or 2. • Sampling pattern generated randomly. – Source has to communicate random number seed to dest in some manner. What are our choices? CS 294 -9 : : Fall 2003

Temporal Locality • Samples from past frames reused in reconstruction of subsequent frames. •

Temporal Locality • Samples from past frames reused in reconstruction of subsequent frames. • Special code word to avoid this (i. e. , flush old samples). • What does this imply about source content? In other words, what are they assuming? CS 294 -9 : : Fall 2003

Performance • Reconstruction results are impressive. • Compression suffers – Nothing for free. •

Performance • Reconstruction results are impressive. • Compression suffers – Nothing for free. • SNR maintained well under loss. CS 294 -9 : : Fall 2003

Weaknesses • What are the main weaknesses of the paper? CS 294 -9 :

Weaknesses • What are the main weaknesses of the paper? CS 294 -9 : : Fall 2003