Title: Multipath Video Transmission in Wireless Networks
1Multipath Video Transmission in Wireless Networks
2Wireless Video - difficulties
- High Error Rates
- Link outages
- High loss rates in multihop environments
- Effects propagate if MC is used
- Route switches can take unacceptable time
- Challenge Effective streaming/conferencing under
conditions of high bit rates, delay and loss
sensitivity.
3Video transmission
- Source Coder efficiently convert the source
output into sequence of binary digits (data
compression) - Channel Coder introduce controlled redundancy
which can be used at the receiver to overcome the
effects of channel noise and interference.
4Video transmission(contd..)
- Shannonns Separation Principle
- Source and Channel coding components of a source
can be designed independently. - Assumes back channel for feedback
- Under delay and complexity constraints the
principle does not hold - In MPT random splitting can make bits received on
a path useless - Use joint source/channel coding.
5Perspectives
- Source Coding
- Layered (MPEG, H.263)
- Error Resilient (MD, MDMC)
- Channel Coding
- FEC (RS codes)
- Protocol
- TCP Friendly
- ARQ
6Perspectives (contd..)
- Network
- Content Delivery (Akamai etc.)
- Use edge architecture to achieve better load
balancing, lower latency and higher throughput. - Ill behaved systematic properties in Internet
Routing - 30-80 percent of cases the alternate paths are
better than the default path chosen by the
routing protocol.(savage-sigcomm99)
7Wireless Video why multipath
- Individual links lack adequate capacity
- Multipath increases usable bandwidth
- Routing protocols make multipath easy
- DSR, AODV, TORA etc. can return multiple paths
- between a source-destination pair.
- Paths with uncorrelated loss/delay
characteristics easy to find - Burst losses converted into isolated losses
- Can use Error Protection (e.g. FEC) effectively
- Multipath provides robustness
8How to get multiple paths options
- Frequency or spatial diversity
- Use relays in the Internet
- Use a source routed path with the default path.
- Overlay networks
- Multiple Connections
- Pray that the connections follow uncorrelated
paths
9How to get multiple paths (contd)
- Multiple servers
- Receiver Driven
- Rate Allocation minimize loss
- Packet Partition Max. time between reception
and playback - Problem Hotspots
- Use load balancing methods
- Multiple PHYs
- Need multiple radios
10Layered Coding
- Non scalable coders require source coders to
explicitly adapt to channel conditions - Not good for real time applications
- Adapt to heterogeneous network by adapting the
bit rate to available bandwidth - Different subsets of the same stream correspond
to video sequence at different rates - Retransmission based low overhead
11Layered Coding Drawbacks
- Require reception of Base Layer for Enhancement
Layer to be effective - Retransmission Time - O(RTT)
- Interactive application tolerable delay (lt150ms)
12Layered Coding example (MPEG)
- Intraframe Separate coding for each frame using
schemes like JPEG. - Exploit spatial redundancy
- Interframe Use motion vectors
- Exploit temporal redundancy
- Translational block-motion model
- Each frame is divided into small blocks, each of
the blocks is assumed to undergo a translation - Find a single motion vector
13MPEG (cont..)
- Motion compensation performed on decompressed
frame - Decoder is able to reconstruct the frame
- MPEG Group of Pictures (GOP)
- most important structure in MPEG coding
- each sequence is divided into multiple GOPs
- Each GOP consists of three different types of
frames (I, P, B)
14MPEG (contd..)
- Types of pictures
- I (intra) frame
- compressed using only intraframe coding
- Moderate compression
- P (predicted) frame
- Coded with motion compression using past I frames
or P frames - Can be used as reference pictures for additional
motion compensation - B (bidirectional) frame
- Coded by motion compensation by either past or
future I or P frames
15Channel coding Mechanisms
- Forward Error Correction(FEC)
- Add redundancy to data
- Example Reed Solomon (RS) codes
- RS(n,k) codes can correct (n-k)/2 symbol errors
- efficient for random bit errors or burst errors
of limited length - does not require any feedback
- FEC reduces delay due to retransmissions (to a
degree)
16Channel coding Mechanisms (contd ..)
- Automatic Repeat Request (ARQ)
- Selective re-transmission of important frames
- Maintain an ARQ buffer at the source
- Lower overhead than FEC
- ARQ retransmission delays can be unacceptable at
times
17Layered Coding Multipath
- Need to use Unequal Error Protection(FEC and
retransmissions) - LC coupled with FEC (Zakhor)
- Using FEC the lost information on one path can be
recovered from packets received through an
alternate path. - Can use unequal error protection for I B P frames
- FEC is ineffective if paths are correlated or the
bottleneck link is shared. - LC coupled with ARQ (Panwar)
- Paths (BLARQ) EL
- Retransmit BL (on EL path) only once based on
NACKs
18Multiple Description Coding
- Drawbacks of Layered Coding
- if the base layer is lost retransmission is the
only solution - real-time applications do not encourage
retransmissions - Error resilient joint coding scheme
- decoded video degrades more gracefully in lossy
environments - better recovery since future as well as past
frames are available - Prevents stalling due to packet loss
- Creates multiple bit-streams of equal importance
19MDC (contd..)
- All descriptions are received - high fidelity
estimate of the original data. - Only some descriptions - acceptable quality
- both fail (very low probability) - can not
receive any information
20MDC with Motion Compensation (MDMC)
- Coder makes use of two previous frames for motion
compensated prediction for a current frame - Includes even frame errors in one description,
and odd frame errors in another - Also codes the mismatch signal
- which is the difference between the prediction
obtained with the past two frames and that from
the past even (or odd) frame only
21MDC Difficulties
- MDC approaches SDC in lossy channels.
- MDC outperforms SDC in bursty slowly varying
environments. - Currently developed schemes correspond to M2
only (increasing M reduces usability) - M is tied to prediction complication, per stream
resolution and action in the clip. - Complex coders
- Needs to store 2 previously encoded frames to
support prediction switching ? high bit rate
encoder
22Comparisons
- FEC vs. MDC
- FEC is a pure channel coding scheme - remain
agnostic to the type of source codec used. - On an average lower computational complexity than
MDC codecs - FEC based recovery adequate for most practical
applications. - Coupled with error concealment techniques, FEC
can be very effective in improving visual quality - MDC on average has smaller bandwidth requirements.
23Multipath (Layered or Multiple Description)
- LC
- the base-layer packets should be delivered over
more reliable paths - good alternative when limited retransmission of
the base layer is acceptable - when it is feasible to apply unequal error
protection over different paths - Loss rates on best path for efficient operation
- medium to high (provided overhead due to UEP/ARQ
is acceptable and occasional retransmission of
base layer is acceptable) - good for wireless
24Multipath (Layered or Multiple Description)
- MDC
- Packets from different descriptions evenly
distributed over paths - effective under stringent delay constraint and
relatively long round trip times on each path - Effective in peer-to-peer scenarios
- Server sends one description directly, client
gets other descriptions from the peers - Loss rates on best path (assuming unbalanced MD)
for efficient operation - low to medium
25Thanks