26. P. 26P. 26
MPEG-DASH
DASHはDynamic Adaptive Streaming over HTTPの略
HTTPを使ってビデオストリーミングを行う技術。YouTubeでも使われている。
類似の技術(AppleのHTTP Live Streaming)とかは独自規格なので標準規格として策定さ
れた
特徴: ユーザーの視聴環境に応じて自動的に最適な帯域の動画データにスムーズに切り替
えることができる。見ている最中に解像度が下がったりするアレ。
仕様策定元のDash Industry Forumでdash.jsが公開されている
27. P. 27P. 27
DRM (Digital Rights Management)
暗号化によってコンテンツの再生や複製を制限し保護する仕組み
Web関係では主に映画や音楽のストリーミングで用いられる
主にWebコンテンツで用いられるDRMシステムは以下
• Microsoft PlayReady
– Microsoft製のDRMシステム
• Google WideVine
– ChromeやFirefox、Playstation等の多数デバイスで使用
– NetflixやHulu、amazon Prime Video等で利用
• Apple Fairplay
28. P. 28P. 28
EME (Encrypted Media Extensions)
暗号化された音声・映像の再生に用いるCDMへアクセスするAPIを提供
ファイル再生の為の複雑な実装やプラグインの導入が不要
CDMやKey System等の外部コンポーネントを利用して実装
EMEはCDMはDRMによって中身が違うが全部同じように扱うことができる
CDM (Content Decryption Module):
暗号化されたメディアを再生可能するモジュール
30. P. 30P. 30
EMEの働き
CDM A CDM B CDM C
DRM A
Encrypted
Media
DRM CDRM B
Encrypted
Media
復号不可
DRMに対応したCDMでなければ
暗号化された動画を復号できない
CDM A CDM B CDM C
DRM A DRM C
EME EME EME
DRM B
Encrypted
Media
Encrypted
Media
EMEが対応しているDRMなら
EMEに対応するCDMで復号可能
31. P. 31P. 31
MSE (Media Source Extension)
HLSやMPEG-DASH等のストリーミングメディア再生に利用するJavascript API
音声・映像セグメントとプレイリストから再生可能なストリームを生成
Segment
init.m4s
1.m4s
2.m4s
3.m4s
Playlist
Media Source
Extension
Data Stream
Player
36. P. 36P. 36
<styling xmlns:tts="http://www.w3.org/ns/ttml#styling">
<!-- s1 specifies default color, font, and text alignment -->
<style xml:id="s1"
tts:color="white"
tts:fontFamily="proportionalSansSerif"
tts:fontSize="22px"
tts:textAlign="center"
/>
<!-- alternative using yellow text but otherwise the same as style s1 -->
<style xml:id="s2" style="s1" tts:color="yellow"/>
<!-- a style based on s1 but justified to the right -->
<style xml:id="s1Right" style="s1" tts:textAlign="end" />
<!-- a style based on s2 but justified to the left -->
<style xml:id="s2Left" style="s2" tts:textAlign="start" />
</styling>
<style>内でスタイルを設定し idを
バインドする
TTMLサンプル <styling>
引用:Timed Text Markup Language 2 (TTML2) W3C Recommendation
既存のスタイルを継承し
一部のパラメータを変更可
37. P. 37P. 37
<layout xmlns:tts="http://www.w3.org/ns/ttml#styling">
<region xml:id="subtitleArea"
style="s1"
tts:extent="560px 62px"
tts:padding="5px 3px"
tts:backgroundColor="black"
tts:displayAlign="after"
/>
</layout>
<layout>内の<region>で表示位置等を
設定しidをバインド
TTMLサンプル <layout>
引用:Timed Text Markup Language 2 (TTML2) W3C Recommendation
38. P. 38P. 38
<body region="subtitleArea">
<div>
<p xml:id="subtitle1" begin="0.76s" end="3.45s">
It seems a paradox, does it not,
</p>
<p xml:id="subtitle2" begin="5.0s" end="10.0s">
that the image formed on<br/>
the Retina should be inverted?
</p>
<p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2">
It is puzzling, why is it<br/>
we do not see things upside-down?
</p>
bodyタグ内 region:
<layout>内で設定した領域の idを指定
pタグ内 style:
<styling>内で設定したスタイルの idを指定
TTMLサンプル <body>
引用:Timed Text Markup Language 2 (TTML2) W3C Recommendation
39. P. 39P. 39
<body region="subtitleArea">
<div>
<p xml:id="subtitle1" begin="0.76s" end="3.45s">
It seems a paradox, does it not,
</p>
<p xml:id="subtitle2" begin="5.0s" end="10.0s">
that the image formed on<br/>
the Retina should be inverted?
</p>
<p xml:id="subtitle3" begin="10.0s" end="16.0s" style="s2">
It is puzzling, why is it<br/>
we do not see things upside-down?
</p>
...
TTML 表示例
引用:Timed Text Markup Language 2 (TTML2) W3C Recommendation
It seems a paradox, does it not,
that the image formed on
the Retina should be invented?
It is puzzling, why is it
we do not see things upside-down?
字幕のイメージ
52. P. 52P. 52
W3Cでの活動
ACCESSはMedia and Entertainment Interest Groupの一員として活動
Media and Entertainment Interest Group
• Web and TV Interest Groupを引き継ぐ形で2017年に設立
• TVやストリーミングメディアの放送に関わる要件定義等を議論
ACCESSの活動
• Interest Group / Working Groupへの参加
• TPACへの参加