Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Flexible FEC: Encoding in RTP
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Varun Singh
November 10, 2014
Technology
0
230
Flexible FEC: Encoding in RTP
Payload WG, IETF91, Honolulu
Varun Singh
November 10, 2014
Tweet
Share
More Decks by Varun Singh
See All by Varun Singh
WebRTC Application interactions API
vr000m
0
90
XRBLOCK Yokohama: update to various drafts
vr000m
0
73
Statistics and Metrics in WebRTC
vr000m
0
770
Flexible FEC
vr000m
0
130
WebRTC Statistics Identifier
vr000m
0
63
Multipath RTP Updates
vr000m
0
89
Protocols and Algorithms for Adaptive Multimedia Systems
vr000m
0
110
Gearbox: Cache-friendly Congestion Control for DASH
vr000m
0
130
Flexible FEC Update
vr000m
0
84
Other Decks in Technology
See All in Technology
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.8k
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
150
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
940
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
210
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
AI駆動PjMの理想像 と現在地 -実践例を添えて-
masahiro_okamura
1
120
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
620
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
420
FinTech SREのAWSサービス活用/Leveraging AWS Services in FinTech SRE
maaaato
0
130
超初心者からでも大丈夫!オープンソース半導体の楽しみ方〜今こそ!オレオレチップをつくろう〜
keropiyo
0
110
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
140
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
Deep Space Network (abreviated)
tonyrice
0
49
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Unsuck your backbone
ammeep
671
58k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Marketing to machines
jonoalderson
1
4.6k
A Tale of Four Properties
chriscoyier
162
24k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
50
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Transcript
flexible-FEC Ali C Begen Varun Singh Mo Zanaty AVTCore, IETF
91 draft-singh-payload-rtp-1d2d-parity-scheme-00
Motivation • Scalability issues with – RFC 5109 – SMPTE 2022-1 – RFC
2733
Row FEC (1D) 1 2 3 7 8 9 4
5 6 R1 R2 R3 ! 1 2 3 7 8 9 4 5 6 R1 R2 R3 ! !
Column FEC (1D) 1 2 3 7 8 9 4
5 6 C1 C2 C3 1 2 3 7 8 9 4 5 6 C1 C2 C3 ! ! ! ! ! ! !
2-D FEC 1 2 3 7 8 9 4 5
6 C1 C2 C3 R1 R2 R3 ! ! ! ! 1 2 3 7 8 9 4 5 6 C1 C2 C3 R1 R2 R3 ! ! ! ! !
RFC 6363: FEC Framework RTP Packets FEC Code FEC Module
RTP (De)mux Transport Layer (UDP) IP Repair RTP Source RTP
Format of repair packets IP Transport RTP header FEC header
Repair Symbol RTP payload
FEC payload 0
1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+ |MSK|P|X| CC |M| PT recovery | SN base | +-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+ | TS recovery | +-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+ | length recovery |M or Mask[8-‐15]| N or Mask[0-‐7]| +-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+ | Mask [16-‐47] (optional) | +-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+ | | + Mask [48-‐111] (optional) + | | +-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+-‐+
MSK values (1/2) • 00 à 16-bit mask • 01
à 48-bit mask • 10 à 112-bit mask • 11 à variable length mask, see M and N values
MSK values (2/2) • M=0, N=0 à fixed values indicated
in SDP • M>0, N=0 à non-interleaved of M packets starting from SN_base – FEC = SN, SN+1, SN+2,…, SN+(M-‐1), SN+M. • M>0, N>0 à interleaved with M offset starting from SN_base in a group of N packets – FEC = SN+(Mx0), SN+(Mx1),…, SN+(MxN).
Next steps • Discussion in MMUSIC about SDP • Adoption
as PAYLOAD WG-item