Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Media over QUICとRTMP+HLSの比較
Search
kota-yata
May 24, 2024
Programming
850
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Media over QUICとRTMP+HLSの比較
WebRTC Meetup 10周年記念イベントでの登壇資料です
https://webrtcmeetup.connpass.com/event/313737/
kota-yata
May 24, 2024
More Decks by kota-yata
See All by kota-yata
リアルな遅延を測る仕様
kota_yata
1
170
Arch輪読: 詳解システムパフォーマンス 第二版 第6章
kota_yata
0
76
RG-Arch 輪講資料: Binary Hacks Rebooted 数値演算など
kota_yata
0
88
結局QUICで通信は速くなるの?
kota_yata
10
8.1k
RG-Arch輪考資料: QUIC is not Quick Enough over Fast Internet
kota_yata
0
210
RG-Arch輪考資料: Implementation and Performance Evaluation of the QUIC Protocol in Linux Kernel
kota_yata
0
250
2024年秋 中村研 WIP発表資料
kota_yata
0
110
パタヘネ輪読: 第五章
kota_yata
0
100
パタヘネ輪読: 第一章
kota_yata
0
430
Other Decks in Programming
See All in Programming
あなたの await、OS まで届いてる? strace で覗く JavaScript の非同期
hasutosasaki
1
1.5k
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
230
パスワード再設定メールのURLについて知っておこう
uyuki234
0
190
Snowflake Openflow Connector利用の勘所 / 20261024developersio2026tokyo-snowflake-openflow
kasacchiful
PRO
0
170
Domain-Driven Transformation
hschwentner
2
2.3k
気持ちぃ〜角丸 Squircle
ryu1013
0
340
phperだってパンチカードでコーディングしたい
o0h
PRO
0
460
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
140
JIS keyboard support in Omarchy
lef237
0
160
AI時代のシニアエンジニアとは
yosuke_furukawa
PRO
10
7.4k
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.8k
Modernizing iOS Apps
seyfoyun
0
120
Featured
See All Featured
Become a Pro
speakerdeck
PRO
31
6.3k
Evolving SEO for Evolving Search Engines
ryanjones
0
330
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
360
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Discover your Explorer Soul
emna__ayadi
2
1.3k
The agentic SEO stack - context over prompts
schlessera
0
980
Practical Orchestrator
shlominoach
192
12k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
490
It's Worth the Effort
3n
188
29k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
The Cost Of JavaScript in 2023
addyosmani
55
10k
HDC tutorial
michielstock
2
980
Transcript
Media over QUICとRTMP+HLSの⽐較 Kota Yatagai (@kota_yata)
⾃⼰紹介 ⼋⾕航太(ヤタガイ コウタ) 2 • 慶應義塾⼤学環境情報学部2年(村井研究室) • QUICに興味がある • WebRTCも⾼校の頃からいじっていたりする
• X: @kota_yata, GitHub: kota-yata
今回やったこと 新興技術Media over QUICと従来のライブ配信⼿法(RTMP+HLS)との⽐較 3 • Media over QUICについてはデコーダは⾃作、エンコーダとサーバーはMetaのOSSを利⽤ ◦
facebookexperimental/moq-go-server ◦ facebookexperimental/moq-encoder-player • RTMP+HLSについてはAmazon IVSのLow-latency Streamingを利⽤
Media over QUICとは?? 4 • QUIC上で動くメディアプロトコル • コアプロトコルとしてMedia over QUIC
Transport (MOQT), ストリーミングフォーマットとして WARPやLOCが存在する ◦ QUICの多重化ストリームを利⽤することでHoLブロッキングを避ける ◦ リレーサーバーの振る舞いをプロトコルに組み込んで⼤規模配信に対応
Media over QUICの特徴 5 1フレームごとにストリームを分けて送信できる (⼩松さんの資料から引⽤) • フレームごとにQUICのストリームを張って送信する • フレーム単位での優先順位制御(ex.新しいフレームを優先)が可能になる
• パケットドロップしても⽋落するのは1フレーム分のみ • 複数トラックの時間同期が可能になる(⾳声‧映像‧MIDI‧触覚データ等)
Media over QUICと他プロトコルの⽐較 6 • HLSやDASHではダメなのか? ◦ TCPを使っている限りHoLブロッキングの問題がついて回る ◦ Adaptive
bitrate(ABR)やセグメント処理が遅延の原因になる(LL-*でもなお遅い) ◦ HLSやMPEG-DASHをQUIC上で使っても多重化ストリームを利⽤できない • WebRTCじゃダメなのか? ◦ WebRTCはカスタマイズ性が著しく低い ▪ libwebrtcをいじらないといけない ▪ MoQはエンコード/デコードはWebCodecsに任せるなど、結構柔軟性がある ◦ P2Pのユースケースに特化されている(特にビデオ会議)
7 デモ
8 デモの構成
感想 9 • jitter buffer⼊れていないとはいえMoQとても早い ◦ QUICが普及するにつれてもっと注⽬されそう • 輻輳を意図的に発⽣させたりしてその時の挙動も⽐較したい