
========================================================
traditional FEC schemes
such as Reed-Solomon, and Hamming codes.
bandwidth utilization issue
unequal error protection
- protection levels
- lower levels – greater protection, smaller group sizes
- higher levels – inverse
- different protection level for different data importance.
the more important parts of the data are always at the beginning of the data packet. - media payload – raw user data
- media header – rtp header
- media packet – rtp header + raw user data
- fec packet – take media packets as input
- output: media packets
- output: fec packets for error correction
- fec header – header info in fec packet
- fec level header – header info in fec packet for each level
-
fec payload – payload of fec packet. may be divided into multiple levels
- relationship between fec packet and media packet
| fec packet(s) | media packet(s) |
|---|---|
| 1 | N (N >= 1) |
| N (N >= 1) | 1 |
basic operation
- XOR
- offset mask m(k)
- the amount of data is protected at level k – L(k)
parity codes
for example, protection on every two data blocks
a b c d <-- media stream
f(a,b) f(c,d) <-- FEC stream
why XOR?
- effectiveness
- simplicity
in protocol design and implementation.
important! for implementation in embedded devices.
Uneven Level Protection (ULP)
- trade-off between the bandwidth and the protection strength.
- different importance with different level of protection.
transfer via separated stream
- origin meida stream is not affected. clients without fec can work well.
- tracking the amount of fec.
issues
- separated stream?
- redundant coding?




近期评论