SlideShare a Scribd company logo
ストリーミングのげんざい 
“No man ever steps in the same river twice” 
~ Heraclitus 
2014-11-11 
Tetsuya Morimoto
がいよう 
● 技術背景 
– ビデオコーデックと特許料 
– Adaptive bitrate streaming 
● HTTP ストリーミングの進化 
● まとめ 
Streaming media 
RTMP 
HTTP 
Progressive download 
Adaptive bitrate streaming 
HTTP Live Streaming 
HTTP Dynamic Streaming 
Smooth Streaming 
MPEG-DASH
こーでっく
こーでっく 
● 動画ファイルには様々なフォーマットがある 
– mp4, flv, webm, mov, wmv, 3gp, ... 
● 動画ファイルを利用する場合、 
– 提供する側があるフォーマットでエンコードして、 
– 再生する側があるフォーマットでデコードする 
ことで内容を見聞きできる 
● 何のためにエンコードするか? 
– 圧縮してサイズを小さくするため 
● エンコード ⇔ デコードが双方向にできる装置や 
ソフトウェアまたはアルゴリズムのことをコーデックと呼ぶ
えいちにーろくよん 
● 広範囲に利用されているビデオコーデックの規格 
– いろんなベンダーが参加して作ったため、多数の特許権が含まれている 
● パテントプールであるMPEG LAに特許料を支払わないといけない 
– エンドユーザーが無料で視聴できるインターネットビデオのみ免除 
(YouTubeのようなサービス) 
● コーデック変換が発生する箇所で特許料の支払い義務が生じる 
– ストリーミング/トランスコードサーバー、ブラウザ、メディアプレイヤー 
– 一般的にH.264を扱うプロダクトを販売/購入する場合、 
その販売/購入代金にその特許料も含まれる 
● その販売企業がMPEG LAに特許料を支払う 
– H.264の特許料はキャップ制で、上限額を支払えば不特定多数へ提供できる 
● Adobe Flash Player 
● Cisco OpenH264
えいちにーろくよんのとっきょりょう 
● MPEG LA の AVC/H.264 情報 
– AVC Patent Portfolio License Briefing 
● ライセンスの要約をまとめた資料 
● Manufacture and Saleの価格帯も書いてある 
● あくまで2008年時点での参考情報 
– いまのライセンスとは違うかもしれない 
● 特許料は年間キャップ制 
– この資料では$6.5 million per year 2011-2015 
– H.264 をプロダクトで商用利用するには 
MPEG LA とライセンスを締結しないといけない
おーぷんえいちにーろくよん 
● CiscoのOpenH264プロジェクトとは? 
– Cisco曰く、WebRTCを促進する目的らしい 
– CiscoがMPEG LAへ特許料を支払っているため、 
Ciscoがビルドしたバイナリを使ってライセンス条項に従えば、特許料の支払いは免除される 
– オープンソースとしてgithubでホスティング: openh264 
● RELEASEファイルにライブラリのダウンロード先がある 
– 2014-05-23 1.0.0 リリース 
– 2014-07-09 1.1.0 リリース 
– 2014-10-28 1.2.0 リリース 
● ライセンスについて 
– サーバーでの商用利用: License question on server-side for commercial use 
– クライアントでの商用利用: License question. 
– 2014-10-14 シスコの OpenH264 が Firefox の一部に 
● EricssonはOpenH264を利用するWebRTC実装をオープンソース化 
● Mozilla 
– 2014-10-14 OpenH264 Now in Firefox 
● Firefox33からOpenH264を組み込み
うぇぶえむ 
● GoogleのWebMプロジェクトとは? 
– 2010年からGoogleが開発 
– open-source, royalty-free, Webに特化したフォーマット 
– コンテナー: webm (Matroskaのサブセット) 
● ビデオコーデック: VP8→VP9 
● オーディオコーデック: Vorbis 
ビデオとオーディオの圧縮技術はそれぞれ違うため 
それらを1つにまとめることを「多重化」すると言う 
また、このまとめたものをコンテナーと呼ぶ 
– 姉妹プロジェクトとして画像フォーマット: webp 
– YouTubeにアップロードされた動画はwebmでエンコードされる 
● 普及を妨げる要因? 
– MPEG LAがH.264をインターネットの無料動画に限り無料に変更 
– VP8がMPEG LAの管理する特許に抵触の可能性 
● 2013-03-07: Google and MPEG LA make a deal over VP8 codec 
– IE 、Safariで未サポート (別途プラグインが必要)
すとりーみんぐ
はやり 
● Streaming方式 (リアル・ストリーミング) 
– RTMPによるストリーミング 
– キャッシュが端末に残らない (CDNには残るかも?) 
– 専用サーバー/クライアントが必要 
– (相対的に)帯域制御やサービス品質の保証が容易 
● Progressive download方式 (擬似ストリーミング) 
– HTTPによるストリーミング(ダウンロード) 
– 端末や途中経路にキャッシュとしてファイルが残る 
– Webサーバーから配信、ブラウザ(html5対応)で再生できる 
● Webアプリのノウハウでスケールアウトが容易 
● Adaptive bitrate streaming方式 
– HTTPストリーミングの進化系 
– デバイスや帯域に適したストリーミングを提供 
HTTP ストリーミング 
HTTP ストリーミング 
あらかじめそれぞれのデバイス、 
ビットレートにトランスコードした 
メディアファイルを用意する 
1つのメディアファイルを 
リアルタイムエンコードする
さいきん 
● Adobe 
– 2009年RTMPの仕様を公開する 
● CDNサービスが可能となり、Flash技術がエンタープライズ分野でも利用される 
– 2010年HTTP Dynamic Streaming (HDS)を提供 (FMS 4.0) 
– 2011年HLSをサポート (Flash Player 11+) 
● Apple 
– 2009年HTTP Live Streaming (HLS)を提供 
● 対応ビデオコーデックはH.264のみ 
● Google 
– 2010年WebMプロジェクトを開始 
● royalty-freeなオープンなストリーミングの世界 
– 2011年Android 3.0 HoneycombでHLSをサポート (スマートフォン4.0) 
● Microsoft 
– 2010年Smooth Streamingを提供 (IIS Media Service 4.0) 
Red5: FMSのOSS実装 
2005年プロジェクトを開始 
2009年に0.8.0 をリリース 
2012年に1.0 をリリース 
Wowza: FMSの競合プロダクト 
2007年1.0 をリリース 
2009年2.0 をリリース(HTTP ストリーミング開始) 
Adaptive bitrate streaming 
2010年ぐらいから始まった 
html5 
2008年First Public Working Draft 
2011年Last Call 
Mozilla (Firefox) 
2010 WebM サポートを支持 
2012 スマートデバイスで H.264 サポート開始 
2014.10 H.264 サポート (OpenH264)
えいちえるえす 
● HTTP Live Streaming ドキュメント 
– Appleが提唱/実装 
– IETFで標準化が進められている 
● HTTP Live Streaming draft-pantos-http-live-streaming 
–現時点ではDraft 14 (2014-10-14) 
– 6ヶ月ごとに更新されるため、標準化が決まるのはまだまだ先になりそう? 
– プレイリストと小さく分割したセグメントファイルを使う 
● プレイリスト: M3Uフォーマット (m3u8) 
– M3UをUTF-8でエンコードしたのを指して.m3u8という拡張子で保存する 
● コンテナー: MPEG-2 TS 
–世界的に採用されてる地上波/BSデジタル放送の規格、日本も同様 
– ビデオコーデックやオーディオコーデックについてはIETFのDraftには書いてない 
–余談: MatchStick Developer's Guideから未来の展望? 
– AESを使った暗号化の仕組みもある 
● HTTP上で暗号化されたファイルを送信 
小さく分割したメディアファイルを 
プレイリストから順番に再生 
Adobe社の戦略? 
2009年RTMP仕様公開 
2010年FMS4.0 をリリース 
- HDS をサポート 
※ Flash Player 11以上H.264 をサポート(IE6 は10 まで)
すまーとでばいす 
● HTTP Live Streaming 対応状況 by JW Player 
● サポートしているストリーミング方式 
– iPhone/iPad 
● iOS 3.0 (iPhone OS) から HLS をサポート 
● 但し、m3uフォーマットの拡張タグなどでバージョン間の違いはある 
– Example Playlist Files for use with HTTP Live Streaming 
– Android 
● 2.3 Gingerbread 
– WebM フォーマットをサポート 
● 3.0 Honeycomb 
プレイリストを書いたりして何でもできる 
– HLS をサポート (MPEG4/H.264) 
– Windows Phone/Tablet 
● Windows8 
プレイリストの中に 
– Smooth Streamingをサポート (MPEG4/H.264)
ぱそこんぶらうざ 
● http://caniuse.com/ 
● ブラウザが<video> タグでサポートしているフォーマット 
IE8 IE9+ Chrome Firefox Safari Opera 
MPEG4 
/H.264 ☓ ○ ○ ○ ○ ☓ 
WebM ☓ ☓ ○ ○ ☓ ○ 
Ogg ☓ ☓ ○ ○ ☓ ○ 
・IE8はFlash player または Silverlight を使う以外にストリーミングする方法はない 
・IE9+でWebMプラグインをインストールすればWebM フォーマットが再生可能 
・Safariのみ、HLS をブラウザがサポートしている
すまーとでばいすとぱそこんぶらうざ 
● http://caniuse.com/ 
● スマートデバイスとパソコンを一緒くたにしてみた 
IE8 
(PC) 
IE9+ 
(PC) 
Chrome 
(PC) 
Firefox 
(PC) 
Safari 
(PC) 
Opera 
(PC) iOS Android 
2.3 
Android 
4.0+ 
Windows 
8+ 
MPEG4 
/H.264 ☓ ○ ○ ○ ○ ☓ ○ ☓ ○ ○ 
WebM ☓ ☓ ○ ○ ☓ ○ ☓ ○ ○ ☓ 
Ogg ☓ ☓ ○ ○ ☓ ○ ☓ ☓ ☓ ☓ 
HLS ☓ ☓ ☓ ☓ ○ ☓ ○ ☓ ○ ☓ 
要件に応じて最適なフォーマット/方式を選択しないといけない 
・IE8は<video> タグをサポートしない 
・SafariはWebM(VP8) をサポートしない
ぶらうざのもんだい 
● HLSのMPEG-2 TS コンテナーにビデオコーデックの指定 
はない 
– iOS (Safari)がVP8 (WebM) をサポートしない 
– 事実上、HLSのビデオコーデックはH.264のみ 
● IE8 (サポートは2016年1月まで)が<video> タグをサ 
ポートしない 
– ストリーミングするにはFlash Player またはSilverlight 
を使うしかない
めでぃあぷれいやー 
● Video.js 
– html5とswfプレイヤーを備えたマルチブラウザ/マルチデバイス対応 
● PC向け: IE8+ 、Firefox 、Chrome 
● スマートデバイス: iOS 、Android 、Windows Tablet/SmartPhone 
– ライセンス: Apache License 2.0 
– プラガブルなアーキテクチャ 
● hls/mediasourceプラグインでHLSに対応 
– flashhlsプレイヤーの1つ (要flash) 
● MPEG-DASHの開発も最近始まった 
– videojs-osmf 
– DASH Everywhere-ish 
– 実績 
● Google Media Frameworkのプレイヤーに採用 
● twitpicやairbnbなどでも採用されているらしい
なぜふらっしゅなのか 
● PC向けブラウザは多くがHLSをサポートしていない 
● (2014-11時点で) HLSをサポートするのはSafariのみ 
– 再生する(H.264デコード)には特許問題の不透明感 
– ブラウザベンダーの思惑? 
● WindowsはSmooth Streamingあるし 
● Chrome/FirefoxはWebMを推進しているし 
● そうだ! Flash Playerを使おう 
– マルチプラットフォーム/ブラウザで動作し、 
H.264デコードの特許問題にも抵触しない唯一のソリューション 
● IE8が<video>タグに対応していない問題も解決? 
MPEG-DASHの普及まで
びでおじぇーえすのあーきてくちゃ 
● video.js 
– プレイヤー本体、ブラウザの<video>タグを使う 
● video-js-swf 
– Flash Playerを使うswfプレイヤーの実装 
– RTMP/HTTPの両方をサポート 
● videojs-contrib-hls 
– HLSをサポートするプラグイン 
● クライアント駆動のビットレートスイッチをサポート 
● 但し、IEのサポートは10+ (要Typed Arrays, Cross-Origin Resource Sharing) 
– プレイリストのパースやh264ストリームを扱う機能を提供 
● videojs-contrib-media-source 
– Media Source Extensionsを扱うためのプラグイン 
● video要素のデータを直接的に扱う 
● ソースから読み込んだデータをbase64でエンコードして直接swfへバッファとしてinvokeする 
– まだまだ荒削りな実装にみえる (- -# 
このバッファリングがピーキー、特にIE10
ぼくのかんがえたさいきょうの 
● ストリーミングサーバー 
– Webサーバーをスケールアウトする形態でHLSを提供 
● 将来的にはMPEG-DASHへ移行 
– RTMPストリーミングは以下の要件がない限り使わない 
(いまの時点では) 
HLS を中心に据え、 
対応できないケースを 
限定的に対応 
● 端末にキャッシュを残せない 
● IE6がサポート対象である (Flash Player 10はHTTPストリーミングを未サポート) 
– IE8サポートが不要ならWebMを提供するのも1つの方法 
● IE、SafariはWebMプラグインのインストールが必要 
● ブラウザ/各種デバイス 
– flashhlsでPC/スマートデバイス全てHLSでストリーミング再生 
● MPEG-DASHでWindows Tablet/SmartPhoneも 
– HLSに対応できないブラウザ (IE8やIE9など)はどうする? 
Flash Playerは必須 
● MPEG4/H.264をFlash Playerで再生 (なくなるのは時間の問題) 
● 要件/構成によってはWebMで代用することも
だっしゅ 
● dashif.org 
– Dynamic Adaptive Streaming over HTTP, aka MPEG-DASH 
– Adobe HDSとMicrosoft Smooth Streamingはこれに移行 
– ベンダーロックインではないAdaptive bitrate streaming ⇔ HLS 
– DRM (デジタル著作権管理)も扱える 
● 標準化 
– 2012-03: 1st Edition of MPEG-DASH, ISO/IEC 23009-1:2012 
– 2014-05: 2nd Edition of MEPG-DASH, ISO/IEC 23009-1:2014 
● HTML5 Media Source Extensionsからも使えるらしい 
● コンテナー: MP4, WebM, MPEG-2 TSなど 
● ISO base media file format (MP4も含む) 
● Matroska/WebM in MPEG DASH 
● OS/ブラウザベンダーの動向 
標準化はされているから 
これからの普及待ち 
– Apple: Safari8+(Yosemite), Adobe Primetime Support for MPEG-DASH 
iOSは? 
– Google: Android 4.4から対応、Chrome23+ 
– Mozilla: Firefox31+(Partial support), DASH Adaptive Streaming for HTML 5 Video (バグ修正中?) 
– Microsoft: IE11+, Building a simple MPEG-DASH streaming player 
– Opera: 20以降 (Only WebM?)
まとめ 
● ストリーミングプロトコルはHTTP一択へ 
– Adaptive bitrate streamingはいまのところ2つに集約化 
● HTTP Live Streaming 
● MPEG-DASH (将来的にはこっち?) 
HLSの展望はApple次第 
● H.264の特許問題はこれらを使うことで一応は回避可能 
– OpenH264やFlash Playerなどエンコード/デコード対応 
– 但し、アプリの作り込みが必要 
● MPEG-DASHでWebMが普及? 
– HLSのコンテナー: MPEG-2 TS 
OS/ ブラウザベンダーの対応次第 
● ビデオコーデック: 仕様にはないけど、事実上はH.264 
– MPEG-DASHのコンテナー: MP4, WebM, MPEG-2 TSなど 
– WebRTCのコーデック: H.264 or VP8(VP9) ?

More Related Content

What's hot

AWSからのメール送信
AWSからのメール送信AWSからのメール送信
AWSからのメール送信
Amazon Web Services Japan
 
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon Web Services Japan
 
New VIdeo CODEC AV1
New VIdeo CODEC AV1 New VIdeo CODEC AV1
New VIdeo CODEC AV1
Tetsuyuki Kobayashi
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
NTT DATA Technology & Innovation
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
 
The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発
Amazon Web Services Japan
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
 
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
Daisuke Morishita
 
AWS初心者向けWebinar AWSとのネットワーク接続入門
AWS初心者向けWebinar AWSとのネットワーク接続入門AWS初心者向けWebinar AWSとのネットワーク接続入門
AWS初心者向けWebinar AWSとのネットワーク接続入門
Amazon Web Services Japan
 
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたKinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみた
dcubeio
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
 
ファイルシステム比較
ファイルシステム比較ファイルシステム比較
ファイルシステム比較
NaoyaFukuda
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
 
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
20210126 AWS Black Belt Online Seminar AWS CodeDeploy20210126 AWS Black Belt Online Seminar AWS CodeDeploy
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
Amazon Web Services Japan
 
AWS Black Belt Techシリーズ Amazon VPC
AWS Black Belt Techシリーズ Amazon VPCAWS Black Belt Techシリーズ Amazon VPC
AWS Black Belt Techシリーズ Amazon VPC
Amazon Web Services Japan
 
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Web Services Japan
 
WebRTC と Native とそれから、それから。
WebRTC と Native とそれから、それから。 WebRTC と Native とそれから、それから。
WebRTC と Native とそれから、それから。
tnoho
 

What's hot (20)

AWSからのメール送信
AWSからのメール送信AWSからのメール送信
AWSからのメール送信
 
Amazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティスAmazon S3を中心とするデータ分析のベストプラクティス
Amazon S3を中心とするデータ分析のベストプラクティス
 
New VIdeo CODEC AV1
New VIdeo CODEC AV1 New VIdeo CODEC AV1
New VIdeo CODEC AV1
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
 
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分けネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
 
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
 
AWS初心者向けWebinar AWSとのネットワーク接続入門
AWS初心者向けWebinar AWSとのネットワーク接続入門AWS初心者向けWebinar AWSとのネットワーク接続入門
AWS初心者向けWebinar AWSとのネットワーク接続入門
 
Kinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみたKinesis Firehoseを使ってみた
Kinesis Firehoseを使ってみた
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
ファイルシステム比較
ファイルシステム比較ファイルシステム比較
ファイルシステム比較
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
 
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
20210126 AWS Black Belt Online Seminar AWS CodeDeploy20210126 AWS Black Belt Online Seminar AWS CodeDeploy
20210126 AWS Black Belt Online Seminar AWS CodeDeploy
 
AWS Black Belt Techシリーズ Amazon VPC
AWS Black Belt Techシリーズ Amazon VPCAWS Black Belt Techシリーズ Amazon VPC
AWS Black Belt Techシリーズ Amazon VPC
 
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身
 
HTTP/2 入門
HTTP/2 入門HTTP/2 入門
HTTP/2 入門
 
WebRTC と Native とそれから、それから。
WebRTC と Native とそれから、それから。 WebRTC と Native とそれから、それから。
WebRTC と Native とそれから、それから。
 

Viewers also liked

ライブストリーミングの基礎知識
ライブストリーミングの基礎知識ライブストリーミングの基礎知識
ライブストリーミングの基礎知識kumaryu
 
HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望
HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望
HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望
Teiichi Ota
 
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
Teiichi Ota
 
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるHTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
Gaprot
 
ライブストリーミングの基礎知識その2
ライブストリーミングの基礎知識その2ライブストリーミングの基礎知識その2
ライブストリーミングの基礎知識その2kumaryu
 
HLSについて知っていることを話します
HLSについて知っていることを話しますHLSについて知っていることを話します
HLSについて知っていることを話します
Moriyoshi Koizumi
 

Viewers also liked (6)

ライブストリーミングの基礎知識
ライブストリーミングの基礎知識ライブストリーミングの基礎知識
ライブストリーミングの基礎知識
 
HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望
HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望
HTML5でDRMってアリなの?〜誰も教えてくれないマルチデバイス時代のコンテンツ保護。その現状と展望
 
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
 
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させるHTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
HTML5 + JavaScriptでDRMつきMPEG-DASHを再生させる
 
ライブストリーミングの基礎知識その2
ライブストリーミングの基礎知識その2ライブストリーミングの基礎知識その2
ライブストリーミングの基礎知識その2
 
HLSについて知っていることを話します
HLSについて知っていることを話しますHLSについて知っていることを話します
HLSについて知っていることを話します
 

Similar to ストリーミングのげんざい

HTML5 VIDEO on Chromecast
HTML5 VIDEO on ChromecastHTML5 VIDEO on Chromecast
HTML5 VIDEO on Chromecast
Katsumi Onishi
 
Windows Azure Media Serviceで作成する割と普通な動画サイト
Windows Azure Media Serviceで作成する割と普通な動画サイトWindows Azure Media Serviceで作成する割と普通な動画サイト
Windows Azure Media Serviceで作成する割と普通な動画サイトnormalian
 
インターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組みインターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組み
Ryosuke Kubo
 
より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化
Yusuke Goto
 
Perl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバーPerl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバーHideo Kimura
 
第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。
第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。
第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。
Daiyu Hatakeyama
 
HTML5ビデオ導入編
HTML5ビデオ導入編HTML5ビデオ導入編
HTML5ビデオ導入編
Yuki Naotori
 
動画配信プラットフォーム on AWS
動画配信プラットフォーム on AWS動画配信プラットフォーム on AWS
動画配信プラットフォーム on AWS
Amazon Web Services Japan
 
<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013
<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013
<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013満徳 関
 
クラウドサービスを使って作る動画サイト?
クラウドサービスを使って作る動画サイト?クラウドサービスを使って作る動画サイト?
クラウドサービスを使って作る動画サイト?
Daichi Isami
 
WebRTC SFU mediasoup sample
WebRTC SFU mediasoup sampleWebRTC SFU mediasoup sample
WebRTC SFU mediasoup sample
mganeko
 
Azure vs aws比較 エンコード ace用
Azure vs aws比較 エンコード ace用Azure vs aws比較 エンコード ace用
Azure vs aws比較 エンコード ace用
裕之 木下
 
DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~
DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~
DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~
decode2016
 
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
TAKUYA OHTA
 
配布用Cacti running with cherokee
配布用Cacti running with cherokee配布用Cacti running with cherokee
配布用Cacti running with cherokee
yut148atgmaildotcom
 
ABEMA を次のフェーズへ進化させる技術への取り組み
ABEMA を次のフェーズへ進化させる技術への取り組みABEMA を次のフェーズへ進化させる技術への取り組み
ABEMA を次のフェーズへ進化させる技術への取り組み
Yusuke Goto
 
Azure Media Services 大全
Azure Media Services 大全Azure Media Services 大全
Azure Media Services 大全
Daiyu Hatakeyama
 
Azure Media Services 概要
Azure Media Services 概要Azure Media Services 概要
Azure Media Services 概要
Daiyu Hatakeyama
 
Azure Media Services 大全
Azure Media Services 大全Azure Media Services 大全
Azure Media Services 大全
Daiyu Hatakeyama
 
インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版
Yusei Yamanaka
 

Similar to ストリーミングのげんざい (20)

HTML5 VIDEO on Chromecast
HTML5 VIDEO on ChromecastHTML5 VIDEO on Chromecast
HTML5 VIDEO on Chromecast
 
Windows Azure Media Serviceで作成する割と普通な動画サイト
Windows Azure Media Serviceで作成する割と普通な動画サイトWindows Azure Media Serviceで作成する割と普通な動画サイト
Windows Azure Media Serviceで作成する割と普通な動画サイト
 
インターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組みインターネットにおける動画配信の仕組み
インターネットにおける動画配信の仕組み
 
より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化
 
Perl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバーPerl で作るメディアストリーミングサーバー
Perl で作るメディアストリーミングサーバー
 
第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。
第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。
第1回 html5j TV部 勉強会 MPEG-DASH向けの動画配信。
 
HTML5ビデオ導入編
HTML5ビデオ導入編HTML5ビデオ導入編
HTML5ビデオ導入編
 
動画配信プラットフォーム on AWS
動画配信プラットフォーム on AWS動画配信プラットフォーム on AWS
動画配信プラットフォーム on AWS
 
<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013
<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013
<初級> Windows Azure Media Services を活用したマルチデバイスへの動画配信 - Community OpenDay 2013
 
クラウドサービスを使って作る動画サイト?
クラウドサービスを使って作る動画サイト?クラウドサービスを使って作る動画サイト?
クラウドサービスを使って作る動画サイト?
 
WebRTC SFU mediasoup sample
WebRTC SFU mediasoup sampleWebRTC SFU mediasoup sample
WebRTC SFU mediasoup sample
 
Azure vs aws比較 エンコード ace用
Azure vs aws比較 エンコード ace用Azure vs aws比較 エンコード ace用
Azure vs aws比較 エンコード ace用
 
DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~
DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~
DEV-019_Programmable Video ~Azure Media Services でのビデオ サービス開発~
 
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
IT エンジニアのための 流し読み Windows 10 - Windows のネットワーク最適化機能
 
配布用Cacti running with cherokee
配布用Cacti running with cherokee配布用Cacti running with cherokee
配布用Cacti running with cherokee
 
ABEMA を次のフェーズへ進化させる技術への取り組み
ABEMA を次のフェーズへ進化させる技術への取り組みABEMA を次のフェーズへ進化させる技術への取り組み
ABEMA を次のフェーズへ進化させる技術への取り組み
 
Azure Media Services 大全
Azure Media Services 大全Azure Media Services 大全
Azure Media Services 大全
 
Azure Media Services 概要
Azure Media Services 概要Azure Media Services 概要
Azure Media Services 概要
 
Azure Media Services 大全
Azure Media Services 大全Azure Media Services 大全
Azure Media Services 大全
 
インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版
 

More from Tetsuya Morimoto

ビジネスパーソン x プログラミング
ビジネスパーソン x プログラミングビジネスパーソン x プログラミング
ビジネスパーソン x プログラミング
Tetsuya Morimoto
 
チケット駆動開発のススメ
チケット駆動開発のススメチケット駆動開発のススメ
チケット駆動開発のススメ
Tetsuya Morimoto
 
Pythonと型チェッカー
Pythonと型チェッカーPythonと型チェッカー
Pythonと型チェッカー
Tetsuya Morimoto
 
PyLadies Tokyo 二周年記念パーティ LT
PyLadies Tokyo 二周年記念パーティ LTPyLadies Tokyo 二周年記念パーティ LT
PyLadies Tokyo 二周年記念パーティ LT
Tetsuya Morimoto
 
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションPyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
Tetsuya Morimoto
 
Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)
Tetsuya Morimoto
 
Python3 プログラミング勉強会
Python3 プログラミング勉強会Python3 プログラミング勉強会
Python3 プログラミング勉強会Tetsuya Morimoto
 
PyCon 2012 紀行
PyCon 2012 紀行PyCon 2012 紀行
PyCon 2012 紀行
Tetsuya Morimoto
 
Sphinx 社内勉強会
Sphinx 社内勉強会Sphinx 社内勉強会
Sphinx 社内勉強会
Tetsuya Morimoto
 
Ikazuchi introduction for Europython 2011 LT
Ikazuchi introduction for Europython 2011 LTIkazuchi introduction for Europython 2011 LT
Ikazuchi introduction for Europython 2011 LT
Tetsuya Morimoto
 
Python界隈の翻訳プロジェクト
Python界隈の翻訳プロジェクトPython界隈の翻訳プロジェクト
Python界隈の翻訳プロジェクト
Tetsuya Morimoto
 
エキ Py 読書会02 2章後半
エキ Py 読書会02 2章後半エキ Py 読書会02 2章後半
エキ Py 読書会02 2章後半
Tetsuya Morimoto
 
エキ Py 読書会02 2章前半
エキ Py 読書会02 2章前半エキ Py 読書会02 2章前半
エキ Py 読書会02 2章前半
Tetsuya Morimoto
 
エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7Tetsuya Morimoto
 
Ex py intro-20100630
Ex py intro-20100630Ex py intro-20100630
Ex py intro-20100630
Tetsuya Morimoto
 
曖昧 RPM 講座
曖昧 RPM 講座曖昧 RPM 講座
曖昧 RPM 講座
Tetsuya Morimoto
 

More from Tetsuya Morimoto (17)

ビジネスパーソン x プログラミング
ビジネスパーソン x プログラミングビジネスパーソン x プログラミング
ビジネスパーソン x プログラミング
 
チケット駆動開発のススメ
チケット駆動開発のススメチケット駆動開発のススメ
チケット駆動開発のススメ
 
Pythonと型チェッカー
Pythonと型チェッカーPythonと型チェッカー
Pythonと型チェッカー
 
PyLadies Tokyo 二周年記念パーティ LT
PyLadies Tokyo 二周年記念パーティ LTPyLadies Tokyo 二周年記念パーティ LT
PyLadies Tokyo 二周年記念パーティ LT
 
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションPyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
 
Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)Python と型ヒント (Type Hints)
Python と型ヒント (Type Hints)
 
Hyper Introduction
Hyper IntroductionHyper Introduction
Hyper Introduction
 
Python3 プログラミング勉強会
Python3 プログラミング勉強会Python3 プログラミング勉強会
Python3 プログラミング勉強会
 
PyCon 2012 紀行
PyCon 2012 紀行PyCon 2012 紀行
PyCon 2012 紀行
 
Sphinx 社内勉強会
Sphinx 社内勉強会Sphinx 社内勉強会
Sphinx 社内勉強会
 
Ikazuchi introduction for Europython 2011 LT
Ikazuchi introduction for Europython 2011 LTIkazuchi introduction for Europython 2011 LT
Ikazuchi introduction for Europython 2011 LT
 
Python界隈の翻訳プロジェクト
Python界隈の翻訳プロジェクトPython界隈の翻訳プロジェクト
Python界隈の翻訳プロジェクト
 
エキ Py 読書会02 2章後半
エキ Py 読書会02 2章後半エキ Py 読書会02 2章後半
エキ Py 読書会02 2章後半
 
エキ Py 読書会02 2章前半
エキ Py 読書会02 2章前半エキ Py 読書会02 2章前半
エキ Py 読書会02 2章前半
 
エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7エキ Py 読書会02 2010/9/7
エキ Py 読書会02 2010/9/7
 
Ex py intro-20100630
Ex py intro-20100630Ex py intro-20100630
Ex py intro-20100630
 
曖昧 RPM 講座
曖昧 RPM 講座曖昧 RPM 講座
曖昧 RPM 講座
 

Recently uploaded

単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
Yuuitirou528 default
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
Toru Tamaki
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 

Recently uploaded (16)

単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料CS集会#13_なるほどわからん通信技術 発表資料
CS集会#13_なるほどわからん通信技術 発表資料
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
論文紹介:When Visual Prompt Tuning Meets Source-Free Domain Adaptive Semantic Seg...
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 

ストリーミングのげんざい

  • 1. ストリーミングのげんざい “No man ever steps in the same river twice” ~ Heraclitus 2014-11-11 Tetsuya Morimoto
  • 2. がいよう ● 技術背景 – ビデオコーデックと特許料 – Adaptive bitrate streaming ● HTTP ストリーミングの進化 ● まとめ Streaming media RTMP HTTP Progressive download Adaptive bitrate streaming HTTP Live Streaming HTTP Dynamic Streaming Smooth Streaming MPEG-DASH
  • 4. こーでっく ● 動画ファイルには様々なフォーマットがある – mp4, flv, webm, mov, wmv, 3gp, ... ● 動画ファイルを利用する場合、 – 提供する側があるフォーマットでエンコードして、 – 再生する側があるフォーマットでデコードする ことで内容を見聞きできる ● 何のためにエンコードするか? – 圧縮してサイズを小さくするため ● エンコード ⇔ デコードが双方向にできる装置や ソフトウェアまたはアルゴリズムのことをコーデックと呼ぶ
  • 5. えいちにーろくよん ● 広範囲に利用されているビデオコーデックの規格 – いろんなベンダーが参加して作ったため、多数の特許権が含まれている ● パテントプールであるMPEG LAに特許料を支払わないといけない – エンドユーザーが無料で視聴できるインターネットビデオのみ免除 (YouTubeのようなサービス) ● コーデック変換が発生する箇所で特許料の支払い義務が生じる – ストリーミング/トランスコードサーバー、ブラウザ、メディアプレイヤー – 一般的にH.264を扱うプロダクトを販売/購入する場合、 その販売/購入代金にその特許料も含まれる ● その販売企業がMPEG LAに特許料を支払う – H.264の特許料はキャップ制で、上限額を支払えば不特定多数へ提供できる ● Adobe Flash Player ● Cisco OpenH264
  • 6. えいちにーろくよんのとっきょりょう ● MPEG LA の AVC/H.264 情報 – AVC Patent Portfolio License Briefing ● ライセンスの要約をまとめた資料 ● Manufacture and Saleの価格帯も書いてある ● あくまで2008年時点での参考情報 – いまのライセンスとは違うかもしれない ● 特許料は年間キャップ制 – この資料では$6.5 million per year 2011-2015 – H.264 をプロダクトで商用利用するには MPEG LA とライセンスを締結しないといけない
  • 7. おーぷんえいちにーろくよん ● CiscoのOpenH264プロジェクトとは? – Cisco曰く、WebRTCを促進する目的らしい – CiscoがMPEG LAへ特許料を支払っているため、 Ciscoがビルドしたバイナリを使ってライセンス条項に従えば、特許料の支払いは免除される – オープンソースとしてgithubでホスティング: openh264 ● RELEASEファイルにライブラリのダウンロード先がある – 2014-05-23 1.0.0 リリース – 2014-07-09 1.1.0 リリース – 2014-10-28 1.2.0 リリース ● ライセンスについて – サーバーでの商用利用: License question on server-side for commercial use – クライアントでの商用利用: License question. – 2014-10-14 シスコの OpenH264 が Firefox の一部に ● EricssonはOpenH264を利用するWebRTC実装をオープンソース化 ● Mozilla – 2014-10-14 OpenH264 Now in Firefox ● Firefox33からOpenH264を組み込み
  • 8. うぇぶえむ ● GoogleのWebMプロジェクトとは? – 2010年からGoogleが開発 – open-source, royalty-free, Webに特化したフォーマット – コンテナー: webm (Matroskaのサブセット) ● ビデオコーデック: VP8→VP9 ● オーディオコーデック: Vorbis ビデオとオーディオの圧縮技術はそれぞれ違うため それらを1つにまとめることを「多重化」すると言う また、このまとめたものをコンテナーと呼ぶ – 姉妹プロジェクトとして画像フォーマット: webp – YouTubeにアップロードされた動画はwebmでエンコードされる ● 普及を妨げる要因? – MPEG LAがH.264をインターネットの無料動画に限り無料に変更 – VP8がMPEG LAの管理する特許に抵触の可能性 ● 2013-03-07: Google and MPEG LA make a deal over VP8 codec – IE 、Safariで未サポート (別途プラグインが必要)
  • 10. はやり ● Streaming方式 (リアル・ストリーミング) – RTMPによるストリーミング – キャッシュが端末に残らない (CDNには残るかも?) – 専用サーバー/クライアントが必要 – (相対的に)帯域制御やサービス品質の保証が容易 ● Progressive download方式 (擬似ストリーミング) – HTTPによるストリーミング(ダウンロード) – 端末や途中経路にキャッシュとしてファイルが残る – Webサーバーから配信、ブラウザ(html5対応)で再生できる ● Webアプリのノウハウでスケールアウトが容易 ● Adaptive bitrate streaming方式 – HTTPストリーミングの進化系 – デバイスや帯域に適したストリーミングを提供 HTTP ストリーミング HTTP ストリーミング あらかじめそれぞれのデバイス、 ビットレートにトランスコードした メディアファイルを用意する 1つのメディアファイルを リアルタイムエンコードする
  • 11. さいきん ● Adobe – 2009年RTMPの仕様を公開する ● CDNサービスが可能となり、Flash技術がエンタープライズ分野でも利用される – 2010年HTTP Dynamic Streaming (HDS)を提供 (FMS 4.0) – 2011年HLSをサポート (Flash Player 11+) ● Apple – 2009年HTTP Live Streaming (HLS)を提供 ● 対応ビデオコーデックはH.264のみ ● Google – 2010年WebMプロジェクトを開始 ● royalty-freeなオープンなストリーミングの世界 – 2011年Android 3.0 HoneycombでHLSをサポート (スマートフォン4.0) ● Microsoft – 2010年Smooth Streamingを提供 (IIS Media Service 4.0) Red5: FMSのOSS実装 2005年プロジェクトを開始 2009年に0.8.0 をリリース 2012年に1.0 をリリース Wowza: FMSの競合プロダクト 2007年1.0 をリリース 2009年2.0 をリリース(HTTP ストリーミング開始) Adaptive bitrate streaming 2010年ぐらいから始まった html5 2008年First Public Working Draft 2011年Last Call Mozilla (Firefox) 2010 WebM サポートを支持 2012 スマートデバイスで H.264 サポート開始 2014.10 H.264 サポート (OpenH264)
  • 12. えいちえるえす ● HTTP Live Streaming ドキュメント – Appleが提唱/実装 – IETFで標準化が進められている ● HTTP Live Streaming draft-pantos-http-live-streaming –現時点ではDraft 14 (2014-10-14) – 6ヶ月ごとに更新されるため、標準化が決まるのはまだまだ先になりそう? – プレイリストと小さく分割したセグメントファイルを使う ● プレイリスト: M3Uフォーマット (m3u8) – M3UをUTF-8でエンコードしたのを指して.m3u8という拡張子で保存する ● コンテナー: MPEG-2 TS –世界的に採用されてる地上波/BSデジタル放送の規格、日本も同様 – ビデオコーデックやオーディオコーデックについてはIETFのDraftには書いてない –余談: MatchStick Developer's Guideから未来の展望? – AESを使った暗号化の仕組みもある ● HTTP上で暗号化されたファイルを送信 小さく分割したメディアファイルを プレイリストから順番に再生 Adobe社の戦略? 2009年RTMP仕様公開 2010年FMS4.0 をリリース - HDS をサポート ※ Flash Player 11以上H.264 をサポート(IE6 は10 まで)
  • 13. すまーとでばいす ● HTTP Live Streaming 対応状況 by JW Player ● サポートしているストリーミング方式 – iPhone/iPad ● iOS 3.0 (iPhone OS) から HLS をサポート ● 但し、m3uフォーマットの拡張タグなどでバージョン間の違いはある – Example Playlist Files for use with HTTP Live Streaming – Android ● 2.3 Gingerbread – WebM フォーマットをサポート ● 3.0 Honeycomb プレイリストを書いたりして何でもできる – HLS をサポート (MPEG4/H.264) – Windows Phone/Tablet ● Windows8 プレイリストの中に – Smooth Streamingをサポート (MPEG4/H.264)
  • 14. ぱそこんぶらうざ ● http://caniuse.com/ ● ブラウザが<video> タグでサポートしているフォーマット IE8 IE9+ Chrome Firefox Safari Opera MPEG4 /H.264 ☓ ○ ○ ○ ○ ☓ WebM ☓ ☓ ○ ○ ☓ ○ Ogg ☓ ☓ ○ ○ ☓ ○ ・IE8はFlash player または Silverlight を使う以外にストリーミングする方法はない ・IE9+でWebMプラグインをインストールすればWebM フォーマットが再生可能 ・Safariのみ、HLS をブラウザがサポートしている
  • 15. すまーとでばいすとぱそこんぶらうざ ● http://caniuse.com/ ● スマートデバイスとパソコンを一緒くたにしてみた IE8 (PC) IE9+ (PC) Chrome (PC) Firefox (PC) Safari (PC) Opera (PC) iOS Android 2.3 Android 4.0+ Windows 8+ MPEG4 /H.264 ☓ ○ ○ ○ ○ ☓ ○ ☓ ○ ○ WebM ☓ ☓ ○ ○ ☓ ○ ☓ ○ ○ ☓ Ogg ☓ ☓ ○ ○ ☓ ○ ☓ ☓ ☓ ☓ HLS ☓ ☓ ☓ ☓ ○ ☓ ○ ☓ ○ ☓ 要件に応じて最適なフォーマット/方式を選択しないといけない ・IE8は<video> タグをサポートしない ・SafariはWebM(VP8) をサポートしない
  • 16. ぶらうざのもんだい ● HLSのMPEG-2 TS コンテナーにビデオコーデックの指定 はない – iOS (Safari)がVP8 (WebM) をサポートしない – 事実上、HLSのビデオコーデックはH.264のみ ● IE8 (サポートは2016年1月まで)が<video> タグをサ ポートしない – ストリーミングするにはFlash Player またはSilverlight を使うしかない
  • 17. めでぃあぷれいやー ● Video.js – html5とswfプレイヤーを備えたマルチブラウザ/マルチデバイス対応 ● PC向け: IE8+ 、Firefox 、Chrome ● スマートデバイス: iOS 、Android 、Windows Tablet/SmartPhone – ライセンス: Apache License 2.0 – プラガブルなアーキテクチャ ● hls/mediasourceプラグインでHLSに対応 – flashhlsプレイヤーの1つ (要flash) ● MPEG-DASHの開発も最近始まった – videojs-osmf – DASH Everywhere-ish – 実績 ● Google Media Frameworkのプレイヤーに採用 ● twitpicやairbnbなどでも採用されているらしい
  • 18. なぜふらっしゅなのか ● PC向けブラウザは多くがHLSをサポートしていない ● (2014-11時点で) HLSをサポートするのはSafariのみ – 再生する(H.264デコード)には特許問題の不透明感 – ブラウザベンダーの思惑? ● WindowsはSmooth Streamingあるし ● Chrome/FirefoxはWebMを推進しているし ● そうだ! Flash Playerを使おう – マルチプラットフォーム/ブラウザで動作し、 H.264デコードの特許問題にも抵触しない唯一のソリューション ● IE8が<video>タグに対応していない問題も解決? MPEG-DASHの普及まで
  • 19. びでおじぇーえすのあーきてくちゃ ● video.js – プレイヤー本体、ブラウザの<video>タグを使う ● video-js-swf – Flash Playerを使うswfプレイヤーの実装 – RTMP/HTTPの両方をサポート ● videojs-contrib-hls – HLSをサポートするプラグイン ● クライアント駆動のビットレートスイッチをサポート ● 但し、IEのサポートは10+ (要Typed Arrays, Cross-Origin Resource Sharing) – プレイリストのパースやh264ストリームを扱う機能を提供 ● videojs-contrib-media-source – Media Source Extensionsを扱うためのプラグイン ● video要素のデータを直接的に扱う ● ソースから読み込んだデータをbase64でエンコードして直接swfへバッファとしてinvokeする – まだまだ荒削りな実装にみえる (- -# このバッファリングがピーキー、特にIE10
  • 20. ぼくのかんがえたさいきょうの ● ストリーミングサーバー – Webサーバーをスケールアウトする形態でHLSを提供 ● 将来的にはMPEG-DASHへ移行 – RTMPストリーミングは以下の要件がない限り使わない (いまの時点では) HLS を中心に据え、 対応できないケースを 限定的に対応 ● 端末にキャッシュを残せない ● IE6がサポート対象である (Flash Player 10はHTTPストリーミングを未サポート) – IE8サポートが不要ならWebMを提供するのも1つの方法 ● IE、SafariはWebMプラグインのインストールが必要 ● ブラウザ/各種デバイス – flashhlsでPC/スマートデバイス全てHLSでストリーミング再生 ● MPEG-DASHでWindows Tablet/SmartPhoneも – HLSに対応できないブラウザ (IE8やIE9など)はどうする? Flash Playerは必須 ● MPEG4/H.264をFlash Playerで再生 (なくなるのは時間の問題) ● 要件/構成によってはWebMで代用することも
  • 21. だっしゅ ● dashif.org – Dynamic Adaptive Streaming over HTTP, aka MPEG-DASH – Adobe HDSとMicrosoft Smooth Streamingはこれに移行 – ベンダーロックインではないAdaptive bitrate streaming ⇔ HLS – DRM (デジタル著作権管理)も扱える ● 標準化 – 2012-03: 1st Edition of MPEG-DASH, ISO/IEC 23009-1:2012 – 2014-05: 2nd Edition of MEPG-DASH, ISO/IEC 23009-1:2014 ● HTML5 Media Source Extensionsからも使えるらしい ● コンテナー: MP4, WebM, MPEG-2 TSなど ● ISO base media file format (MP4も含む) ● Matroska/WebM in MPEG DASH ● OS/ブラウザベンダーの動向 標準化はされているから これからの普及待ち – Apple: Safari8+(Yosemite), Adobe Primetime Support for MPEG-DASH iOSは? – Google: Android 4.4から対応、Chrome23+ – Mozilla: Firefox31+(Partial support), DASH Adaptive Streaming for HTML 5 Video (バグ修正中?) – Microsoft: IE11+, Building a simple MPEG-DASH streaming player – Opera: 20以降 (Only WebM?)
  • 22. まとめ ● ストリーミングプロトコルはHTTP一択へ – Adaptive bitrate streamingはいまのところ2つに集約化 ● HTTP Live Streaming ● MPEG-DASH (将来的にはこっち?) HLSの展望はApple次第 ● H.264の特許問題はこれらを使うことで一応は回避可能 – OpenH264やFlash Playerなどエンコード/デコード対応 – 但し、アプリの作り込みが必要 ● MPEG-DASHでWebMが普及? – HLSのコンテナー: MPEG-2 TS OS/ ブラウザベンダーの対応次第 ● ビデオコーデック: 仕様にはないけど、事実上はH.264 – MPEG-DASHのコンテナー: MP4, WebM, MPEG-2 TSなど – WebRTCのコーデック: H.264 or VP8(VP9) ?