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
HLSの遅延を350ms+ネットワーク遅延分まで削減する
Search
saturday06
February 26, 2018
Programming
3
2.3k
HLSの遅延を350ms+ネットワーク遅延分まで削減する
変更履歴
2018年2月26日 初稿(勉強会で発表したやつ)
2018年3月5日 確認用URLを変更
saturday06
February 26, 2018
Tweet
Share
More Decks by saturday06
See All by saturday06
Halideによる画像処理について
saturday06
2
2.5k
Other Decks in Programming
See All in Programming
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
160
EventSourcingの理想と現実
wenas
6
2.2k
Server Driven Compose With Firebase
skydoves
0
430
PLoP 2024: The evolution of the microservice architecture pattern language
cer
PRO
0
2.3k
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
1.4k
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
5
3.7k
A Journey of Contribution and Collaboration in Open Source
ivargrimstad
0
360
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
160
リアーキテクチャxDDD 1年間の取り組みと進化
hsawaji
1
180
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
110
Pinia Colada が実現するスマートな非同期処理
naokihaba
4
200
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
380
Featured
See All Featured
Making Projects Easy
brettharned
115
5.9k
Being A Developer After 40
akosma
86
590k
The World Runs on Bad Software
bkeepers
PRO
65
11k
How to train your dragon (web standard)
notwaldorf
88
5.7k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
4 Signs Your Business is Dying
shpigford
180
21k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
2k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Six Lessons from altMBA
skipperchong
26
3.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Transcript
HLSのライブ配信遅延を 『350ms+ネットワーク遅延分』 まで削減する方法 ピクシブ株式会社 茂木 勇
結論は先に書いてって教わった 今回の提案手法でのライブ配信のHLSの遅延 Google Chrome 64 Firefox 58 Safari 11 Edge
各種モバイ ルブラウザ localhostから localhostへの 配信遅延 0.35秒 0.5秒 1.3秒 3秒 未調査 確認用URL: http://hls.leafytree.jp:3001/ ソースコード: https://github.com/saturday06/fastest-practical-hls.git
目次 自己紹介 10秒 HLSのライブ配信ついて 1分 提案手法 1分 デモ 30秒 提案手法の問題点
30秒 ベンチマーク(さっき出したやつ) 30秒 結論 30秒
自己紹介 茂木 勇 - https://twitter.com/saturday06 - https://github.com/saturday06 エンジニア@ピクシブ株式会社 最近は動画配信も・・・!
HLSにおけるライブ配信
HLSのライブ配信遅延 HLSでライブ配信する場合は遅延が結構出る ニコ生の遅延は4-8秒(2017年11月29日の記事) http://panora.tokyo/45675/ FRESH!の遅延は3秒(2017年9月5日の記事。当時の業界最速らしい) https://av.watch.impress.co.jp/docs/news/1079234.html YouTubeの超低遅延モードの遅延は2秒(CMAFを利用、2017年9月25日の記事) https://engineer-world.duckdns.org/2017/09/14/post-1120/ 提案手法は 0.35秒
- 3秒
HLSのライブ配信
0% MPEG-TSファイルに録画 HLSのライブ配信
10% MPEG-TSファイルに録画 HLSのライブ配信
20% MPEG-TSファイルに録画 HLSのライブ配信
MPEG-TSファイルに録画 50% HLSのライブ配信
MPEG-TSファイルに録画 100% HLSのライブ配信
MPEG-TSファイルに録画 100% M3U8 プレイリスト HLSのライブ配信
M3U8 プレイリスト MPEG-TSファイル 完了したTSファイルを プレイリストに追記 HLSのライブ配信
M3U8 プレイリスト MPEG-TSファイル HTTPでダウンロード HLSのライブ配信
M3U8 プレイリスト MPEG-TSファイル HTTPでダウンロード HLSのライブ配信
M3U8 プレイリスト HTTPでダウンロード MPEG-TSファイル MPEG-TSファイルに録画 0% HLSのライブ配信
M3U8 プレイリスト HTTPでダウンロード MPEG-TSファイル MPEG-TSファイルに録画 50% HLSのライブ配信
M3U8 プレイリスト HTTPでダウンロード MPEG-TSファイル MPEG-TSファイル HLSのライブ配信
M3U8 プレイリスト HTTPでダウンロード MPEG-TSファイル MPEG-TSファイル MPEG-TSファイルに録画 0% HLSのライブ配信
M3U8 プレイリスト HTTPでダウンロード MPEG-TSファイル MPEG-TSファイルに録画 50% MPEG-TSファイル MPEG-TSファイル HLSのライブ配信
提案手法
提案手法
M3U8 プレイリスト 提案手法
0% M3U8 プレイリスト MPEG-TSファイル 提案手法
0% M3U8 プレイリスト MPEG-TSファイル 提案手法 未完了でも プレイリストに 書いちゃう
M3U8 プレイリスト 提案手法 10% MPEG-TSファイル
M3U8 プレイリスト 提案手法 30% MPEG-TSファイル HTTPでダウンロード
M3U8 プレイリスト 提案手法 100% MPEG-TSファイル HTTPでダウンロード 0% MPEG-TSファイル
M3U8 プレイリスト 提案手法 30% MPEG-TSファイル HTTPでダウンロード _人人人人人人_ > 実質RTMP <  ̄Y^Y^Y^Y^Y ̄
提案手法の問題点 - CDNが使えないかもしれない - コネクションが増え過ぎる
デモ