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
動画配信技術について
Search
Shumpei Urabe
May 08, 2022
Technology
1
1.2k
動画配信技術について
NAXA, Inc. 社内勉強会資料
https://www.naxa.co.jp
Shumpei Urabe
May 08, 2022
Tweet
Share
More Decks by Shumpei Urabe
See All by Shumpei Urabe
AIを活用した放送技術スタートアップの制作現場改革について
yaminoma
0
13k
Multimedia Security Topics
yaminoma
0
1.9k
コロナ禍でのライブストリーミングの変化とテレビ放送の規格について
yaminoma
0
920
今日から分かる Android Audioの全て
yaminoma
0
360
Apple Low-Latency HLSを使った 超低遅延配信について
yaminoma
3
4.4k
今日から分かる AVAudioEngineの全て
yaminoma
4
5.6k
Cross Platform Video Player
yaminoma
0
400
PHPとRustを組み合わせて音声ファイルをエンコードする話
yaminoma
0
3k
字幕のはなし
yaminoma
4
1.7k
Other Decks in Technology
See All in Technology
XSS攻撃から考察するAWS設定不備の恐怖/20241012 Hironobu Otaki
shift_evolve
0
180
MOSH_companydeck_202410
mosh_inc
0
120
俺とVSCode Python Debugger Extension
sat
PRO
1
150
dbt-coreで実現するCore DataMartsのデータモデリング〜dbt編〜 / Core DataMarts Modeling with dbt-core
i125
0
180
今日から始める技術的負債の解消
leveragestech
3
460
AWS Step Functionsのタスク入出力に秩序を与えよう
haku__hime
0
140
外部カンファレンスで登壇しよう! 〜「強い」エンジニアへの一歩を踏み出す〜
logica0419
4
140
実は仲良し?Amplify Gen2と生成AI
mkdev10
1
180
WebRTC と Wasm の関係を振り返ってみた
tetter27
0
190
Snowflakeでスロークエリ改善に取り組んだ話
tabata0208
0
150
自動テストの信頼性を高めるミューテーションテストの活用に向けて
tarappo
2
110
Measuring the Success of Developer Experience
nikokivela
2
120
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
106
49k
A Tale of Four Properties
chriscoyier
156
22k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
92
16k
How to train your dragon (web standard)
notwaldorf
88
5.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.8k
Become a Pro
speakerdeck
PRO
24
4.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
404
65k
RailsConf 2023
tenderlove
28
870
The World Runs on Bad Software
bkeepers
PRO
65
11k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
260
YesSQL, Process and Tooling at Scale
rocio
167
14k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
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はキャッシュとして動画がダウンロードされるため避けられる場合もある ・ライセンスサーバから暗号化解除のキーを取得し再生 ・スクリーンショットや画面録画の制限も可能