Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
動画配信技術について
Shumpei Urabe
May 08, 2022
Technology
0
480
動画配信技術について
NAXA, Inc. 社内勉強会資料
https://www.naxa.co.jp
Shumpei Urabe
May 08, 2022
Tweet
Share
More Decks by Shumpei Urabe
See All by Shumpei Urabe
Multimedia Security Topics
yaminoma
0
890
コロナ禍でのライブストリーミングの変化とテレビ放送の規格について
yaminoma
0
610
今日から分かる Android Audioの全て
yaminoma
0
210
Apple Low-Latency HLSを使った 超低遅延配信について
yaminoma
3
2.4k
今日から分かる AVAudioEngineの全て
yaminoma
4
3.8k
Cross Platform Video Player
yaminoma
0
260
PHPとRustを組み合わせて音声ファイルをエンコードする話
yaminoma
0
1.9k
Androidでスクリーン配信をする技術
yaminoma
0
290
字幕のはなし
yaminoma
4
1.2k
Other Decks in Technology
See All in Technology
初めてのデータ移行プロジェクトから得た学び
tjmtmmnk
0
330
ラズパイとGASで加湿器の消し忘れをLINEでリマインド&操作
minako__ph
0
150
JAWS-UG 横浜 #54 資料
takakuni
0
210
ChatGPT for Hacking
anugrahsr
0
4.4k
Airdrop for Open Source Projects
epicsdao
0
700
データベースの発表には RDBMS 以外もありますよ
maroon1st
0
240
OpenShiftクラスターのアップグレード自動化への挑戦! / OpenShift Cluster Upgrade Automation
skitamura7446
0
140
書籍を書きました。 そう、VS Codeで。
takumanakagame
4
4.4k
💰年度末予算消化祭💰 Large Memory Instance で 画像分類してみた
__allllllllez__
0
100
OCI DevOps 概要 / OCI DevOps overview
oracle4engineer
PRO
0
490
【Λ(らむだ)】WinActorから始めるいつのまにリスキリング / WinAtorライトニングトーク大会20230123
lambda
0
100
MoT/コネヒト/Kanmu が語るプロダクト開発xデータ分析 - 分析から機械学習システムの開発まで一人で複数ロールを担う大変さ
masatakashiwagi
3
730
Featured
See All Featured
Faster Mobile Websites
deanohume
295
29k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
657
120k
Intergalactic Javascript Robots from Outer Space
tanoku
261
26k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
217
21k
Designing Experiences People Love
moore
130
22k
The Web Native Designer (August 2011)
paulrobertlloyd
76
2.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
643
54k
The Brand Is Dead. Long Live the Brand.
mthomps
48
2.9k
Automating Front-end Workflow
addyosmani
1351
200k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
239
19k
Agile that works and the tools we love
rasmusluckow
320
20k
Teambox: Starting and Learning
jrom
124
7.9k
Transcript
動画配信技術について NAXA, Inc. All Rights Reserved
・動画・ライブ配信の形態 ・配信プロトコルについて ・プロトコルのメディア対応について ・AWSにおけるライブ配信について ・著作権保護について 本日の内容 2
・動画・ライブ配信の形態 ・配信プロトコルについて ・プロトコルのメディア対応について ・AWSにおけるライブ配信について ・著作権保護について 本日の内容 3
4 近年の動画・ライブ配信プラットフォーム
5 一般的なライブ配信の流れ 映像ソース 音声ソース エンコード エンコード H.264,MPEG-2... AAC,MP3... コンテナ MP4,AVI...
Mux RTMP HLS,DASH... 視聴者 配信システム 配信ソフトウェア (OBSなど)
6 音声コーデック MP3 ・非可逆圧縮 ・音楽ファイルで最も利用されている AAC ・非可逆圧縮 ・MP3に比べ圧縮効率が良い ・H.264とセットでよく利用されている FLAC
・可逆圧縮 ・音質が良い
7 動画コーデック MPEG-2 ・DVDや地上デジタル放送で利用 H.264(AVC) ・現在主流のコーデック ・MPEG-2の2倍の圧縮効率 ・4Kサポート H.265(HEVC) ・H.264の2倍の圧縮効率
・8Kサポート AV1 ・ロイヤリティーフリー ・H.265の2倍の圧縮効率 ・今後の主流になる可能性大 VP9 ・Google開発 ・YouTubeで採用
8 コンテナ AVI ・昔から使用されている形式で有名 ・ストリーミング配信には不向き MP4 ・最近主流の形式 ・H.264で多く利用 MPEG2-PS ・DVDで採用
MPEG2-TS ・地上デジタル放送やBlu-rayで利用 ・ファイルを分割 FLV ・フラッシュビデオ ・Flash Playerで再生可能 MPEG-2システム
・動画・ライブ配信の形態 ・配信プロトコルについて ・プロトコルのメディア対応について ・AWSにおけるライブ配信について ・著作権保護について 本日の内容 9
10 配信プロトコル HLS(HTTP Live Streaming) ・Apple開発 ・H.264,AAC,MPEG-2 TS ・Adaptive Bitrate(ABR)対応
・HTTPベース(CDNが使える) ・遅延がある RTMP(Real Time Messaging Protocol) ・Adobe開発 ・Flash Playerでの再生 ・TCPベース ・現在もインジェストにおいては主流 ・今後の代替としてはWebRTCやSRT DASH(Dynamic Adaptive Streaming over HTTP) ・ISO標準規格 ・コーデック・コンテナの依存がない ・Adaptive Bitrate(ABR)対応 ・HTTPベース ・遅延がある CMAF(Common Media Application Format) ・ISO標準規格 ・AppleとMicrosoft共通規格 ・HLSやDASHに比べ低遅延 ・HTTPベース
11 HLSやDASHについて 動画コンテンツ(SD) .ts .ts .ts .ts プレイリスト 分割 HLS
: .m3u8 DASH : .mpd 1 2 3 4 動画コンテンツ(HD) .ts .ts .ts .ts プレイリスト 分割 1 2 3 マスタプレイリスト 4
12 HLSやDASHについて マスタプレイリスト プレイリスト #EXT-X-TARGETDURATION:7 →tsファイルの最大秒数 #EXT-X-MEDIA-SEQUENCE:1 →最初のtsファイルが全体で何番目か #EXTINF:6.006 →tsファイルの秒数
13 WebRTC(Web Real-Time Communication) ・P2Pでブラウザ間での通信が可能 ・遅延が小さい ・大規模配信には不向き(大規模配信の場合はSFUを利用) 配信側 視聴側 配信側
SFU 視聴側 WebRTC SFU (Selective Forwarding Unit ) WebRTC
14 WebRTCによるライブ配信 WebRTC 視聴側 WebRTC サーバ HLS変換 サーバ 配信 サーバ
WebRTC to HLS 配信側 HLS
・動画・ライブ配信の形態 ・配信プロトコルについて ・プロトコルのメディア対応について ・AWSにおけるライブ配信について ・著作権保護について 本日の内容 15
16 HLSとDASHのメディア対応 Chrome macOS Safari IE iOS Android HLS ―
◯ ― ◯ Chrome DASH ◯ ― ― ― ― HTML5のvideoタグ対応 ・ネイティブサポートはまだ少ないが,hls.jsやdash.jsでほとんどのブラウザで再生が可能 ・iOSアプリで動画配信などをする場合HLSはほぼ必須
・動画・ライブ配信の形態 ・配信プロトコルについて ・プロトコルのメディア対応について ・AWSにおけるライブ配信について ・著作権保護について 本日の内容 17
18 AWSの構成 ・出力はHLSとDASHに対応 ・MediaPackageでABRや広告挿入などのパッケージング ・CloudFrontでMediaPackageへのアクセスを最小限に
・動画・ライブ配信の形態 ・配信プロトコルについて ・プロトコルのメディア対応について ・AWSにおけるライブ配信について ・著作権保護について 本日の内容 19
20 HLSやDASHの著作権上の問題 ・URLが分かれば閲覧が可能 ・tsファイルを保存し繋ぎ合わせれば配信まるごとの保存が可能 ・署名付きURLもしくは署名付きCookieの利用(基本的にはCookie) →tsファイルにはアクセスできるので配信の保存は可能 ・HLS+AES →鍵自体は保護されないため鍵情報は取得可能 ・DRM(Digital Rights
Management) →特定のデバイスのみでしか再生できない
21 DRM(Digital Rights Management) ・HLSやDASHはキャッシュとして動画がダウンロードされるため避けられる場合もある ・ライセンスサーバから暗号化解除のキーを取得し再生 ・スクリーンショットや画面録画の制限も可能