Download presentation
Presentation is loading. Please wait.
Published byEileen Hopkins Modified over 9 years ago
1
CS294-9 :: Fall 2003 Joint Source/Channel Coding Ketan Mayer-Patel
2
CS294-9 :: Fall 2003 ALF Make the network work within the terms of the applications. –Can’t change installed technologies. –Physical limits and design tradeoffs prevent this. Optimize the application for the network. –Requires that the network expose internal details. Fundamental issue: the nature of abstraction.
3
CS294-9 :: Fall 2003 Source Coding Old problem in signal processing. –Information source produces a string of symbols. –Symbols are drawn from a fixed alphabet. –Symbol distribution is not uniform. Problem: –Encode symbols as codewords such that average codeword length is minimized. AKA: Data Compression
4
CS294-9 :: Fall 2003 Channel Coding Opposite problem of source coding. –Noisy communication channel. –A set of source codes to transmit. Problem: –Map source codes to channel codes such that probability of correct recovery is arbitrarily low. Shannon shows that if you can characterize the channel noise, this is possible.
5
CS294-9 :: Fall 2003 Separation Principle The really important result. Shannon’s separation principle says that source and channel coding can be done independently. Source Coding Channel Coding Source Words Source Codes Channel Codes Optimize
6
CS294-9 :: Fall 2003 Consequences Seminal work with long lasting consequences. Separated source coding and channel coding as problems. –Resulting in two subfields and from there… Data compression vs. Networking
7
CS294-9 :: Fall 2003 Parallel Constructs Layering of network stack is a parallel concept to the separation principle. Why? What do I mean by this? –Different layers are like different codings. –Each layer provides a particular service. –As a whole, arguable provides as good a service as if a single protocol for everything. Differences? –Protocols build on top of each other while source and channel coding are independent.
8
CS294-9 :: Fall 2003 Joint Source/Channel Coding Separation principle only works in the limit. –Need arbitrarily large data set. –No bound on coding delay. JS/CC can improve coding efficiency in more realistic, non-limit contexts. –Separation best in theory. –JS/CC often best in practice. In other words: do source coding with channel coding in mind and vice versa. –Sound familiar?
9
CS294-9 :: Fall 2003 ALF and JS/CC ALF:Networking::JS/CC:Communication ALF –Layers of networking need to be cognizant of each other (in particular the very top layer, the application). JS/CC –Signal coding needs to be cognizant of transmission coding.
10
CS294-9 :: Fall 2003 Back to MM Networking So how does all of this apply to Multimedia Networking? –What is the stream of source symbols? Media data. –What is the source coding process? Compression schemes (MPEG, MP3, etc.) –What is the channel coding process? RTP packetization Transport-level protocol
11
CS294-9 :: Fall 2003 Putting it together. So what should we do to use ALF and JS/CC in this context? –RTP packetization must be done in a media-aware manner. ALF and JS/CC are not one-way concepts. What’s the obvious other direction? –Media encoding should be done to accommodate packet-based communication. McCanne thesis (Berkeley, 96) is a great resource for learning and thinking about this idea.
12
CS294-9 :: Fall 2003 Loss / Quality Tradeoff Network-aware encoding is generally about dealing with loss. –Need to characterize loss in target environment Packet or bit? Bursty or independent? Probability? –Need to characterize distortion induced by loss. This can be extremely difficult to do. Very non-linear. –Mayer-Patel, ACM Multimedia 2002
13
CS294-9 :: Fall 2003 Dealing with Loss Principle #1 –Make transmission data units independently useful. What’s the difference between TDU and ADU? –Techniques: Checkpoint decoder state in each packet. –What would this mean for MPEG? –Choose granularity to minimize amount of decoder state required. Provide bit offsets to avoid non-byte aligned shifts.
14
CS294-9 :: Fall 2003 Dealing with Loss Principle #2 –Limit propogation of error. –Techniques: Include redundant low-res impostor. –Or substitute past information as impostor. Break long dependency chains. Provide eventual consistency mechanism. –MPEG example: »Forced I-block in P and B frames. –Allocate some portion of bandwidth to this mechanism »Static allocation »Dynamic allocation
15
CS294-9 :: Fall 2003 Dealing with Loss Principle #3 –Decorrelate successive packets Deals with bursty packet loss. –Techniques: Interleave TDU’s from different ADU’s. Spread out information from spatially nearby areas into separate TDU’s. –What’s the cost of this principle?
16
CS294-9 :: Fall 2003 The Art of ALF Ideally: examine both sides simultaneously. A lot like object-oriented design. –Bad design will hurt. General guidelines: –ADU independence. –Minimum, coordinated state. –Eventual state coherence.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.