生配信
[Wikipedia|▼Menu]
.mw-parser-output .hatnote{margin:0.5em 0;padding:3px 2em;background-color:transparent;border-bottom:1px solid #a2a9b1;font-size:90%}

この項目では、インターネットにおけるメディアの配信形態について説明しています。その他の用法については「ストリーム」をご覧ください。
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}

この記事には複数の問題があります。改善やノートページでの議論にご協力ください。

出典がまったく示されていないか不十分です。内容に関する文献や情報源が必要です。(2019年8月)


古い情報を更新する必要があります。(2021年3月)


雑多な内容を羅列した節があります。(2019年8月)
出典検索?: "ストリーミング" ? ニュース ・ 書籍 ・ スカラー ・ CiNii ・ J-STAGE ・ NDL ・ dlib.jp ・ ジャパンサーチ ・ TWL

ストリーミング(英語: streaming)とは、主に音声動画などのマルチメディアファイルを転送・再生するダウンロード方式の一種である。

通常、ファイルはダウンロード完了後に開く動作が行われるが、動画のようなサイズの大きいファイルを再生する際にはダウンロードに非常に時間がかかってしまい、特にライブ配信では大きな支障が出る。そこで、ファイルをダウンロードしながら、同時に再生をすることにより、ユーザーの待ち時間が大幅に短縮される。この方式を大まかに「ストリーミング」と称することが多い。
プログレッシブダウンロード

類似した転送方式にプログレッシブダウンロードがある。ファイルをダウンロードしながら再生するという点ではストリーミングと同じだが、HTTPによる転送が可能であるため、別途ベンダロックインのストリーミングサーバを購入する必要がない、リバースプロキシコンテンツデリバリネットワークとの相性が良いなど、安価に大規模配信できるという大きな利点がある。一方でストリーミングと異なり、再生後、ハードディスクの一時ファイル(英語版)を保存する一時フォルダ(英語版)にマルチメディアファイルがアクセス可能な状態で残ってしまうため、著作権保護の観点からサービス提供者に忌避された時期があった。プログレッシブダウンロードが可能な代表的なファイル形式として、Flash動画などが挙げられる。YouTubeニコニコ動画などの投稿型動画配信サイトを始め、無料コンテンツ配信でも一般的に利用されている。最近は、プログレッシブダウンロードに帯域制御などを追加したストリーミング技術も出てきており(Microsoft Smooth Streaming、Adobe Dynamic Streaming、HTTP Live Streaming、MPEG-DASHなど)、GYAO!Yahoo! JAPANなどが採用していた[1]
ストリーミング専用プロトコル
ブラウザ標準対応のプロトコル

HTTP Live Streaming
(英語版)(HLS)
AppleによるHTTPベースのストリーミング・プロトコル。IETF標準化を目指して仕様が公開されており、多くのサーバやクライアントが対応している。また、いくらかのウェブブラウザSafariChromeなど)でも直接再生することができる。Flash Playerも再生に対応している。また、hls.jsなどのスクリプトを使うことで、HTML5のMedia Source Extensions(英語版) APIに対応しているブラウザでも再生することができる。

MPEG-DASH(Dynamic Adaptive Streaming over HTTP(英語版))
MPEGによって開発されたHTTPベースのストリーミング技術。VLCとGPACが再生に対応しているほか、dash.jsを使うことによってHTML5のMedia Source Extensions APIに対応しているブラウザでも再生することができ、dash.asを使うことによってFlash Playerでも再生することができる。MP4BoxやFFmpegがMPEG-DASH互換MP4フラグメントの生成に対応している。
ブラウザ再生にプラグインが必要となるプロトコル

RTSP(Real Time Streaming Protocol)
IETFで標準化されており、RealMedia / QuickTime / Windows Media / GStreamerを含む多くのプレーヤーで再生することができる。また、Flash Playerからは、Locomote Video Playerなどのプレイヤーを通して再生することができる。ただし、多くのブラウザは直接対応しておらず、プラグインや外部プレイヤーを使う必要がある。多くのストリーミングソフトウェアで、この送出が可能。

MMS(Microsoft Media Server(英語版))
Windows Mediaのストリーミング配信に使用される。EUの独占禁止法による問題から、楕円曲線暗号を使ったDRMを含むプロトコル仕様が公開されている。MMSを再生できるプレーヤーは多いが、互換性に問題があるものもある。また、多くのブラウザは直接対応しておらず、プラグインや外部プレイヤーを使う必要がある。いくらかのストリーミングソフトウェアで、この送出が可能。

Microsoft Smooth Streaming
マイクロソフトによるSilverlight用のストリーミングプロトコル。HTTPプログレッシブダウンロード技術を用いている[2]VLCメディアプレーヤー 2.1以降がこの再生に対応している。Flash Playerからは、Smooth Streaming Plugin for OSMFを使うことで再生することができる。多くのブラウザは直接対応しておらず、プラグインや外部プレイヤーを使う必要がある。FFmpegがスムースストリーミングに使われるISMVフラグメントの生成に対応している。

RTMP(Real Time Messaging Protocol)
アドビによるFlash Video用のストリーミングプロトコル。リバースエンジニアリングによって仕様が解析されているため、多くのオープンソースソフトウェアがこの再生及び送出に対応している。ただし、多くのブラウザは直接再生することができず、プラグインを使う必要がある。このことは、プラグインに対応していないモバイル端末で特に問題となる。

Adobe HTTP Dynamic Streaming(HDS)
アドビによるHTTPベースのFlash Video用ストリーミングプロトコル。ファイルを分割しフラグメント毎にダウンロードするという手法を使っている。多くのブラウザは直接対応しておらず、プラグインを使う必要がある。FFmpegがHDSフラグメントの生成に対応している。
P2Pマルチキャスト配信プロトコル

Real Time Media Flow Protocol
アドビが開発したFlash用P2Pプロトコルであり、.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation.cs-ja1 q,.mw-parser-output .citation.cs-ja2 q{quotes:"「""」""『""』"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:#d33}.mw-parser-output .cs1-visible-error{color:#d33}.mw-parser-output .cs1-maint{display:none;color:#3a3;margin-left:0.3em}.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}RFC 7016としてプロトコル仕様が公開されている。P2Pマルチキャスト配信に対応している[3]

PeerCastプロトコル
PeerCastの使っているプロトコル。

WebRTC
P2Pマルチキャスト配信が実現可能なWeb標準のP2P APIであり、ブラウザが直接対応している。P2P配信プロトコル自体は標準化されていない。WebRTCに対応するブラウザとして、Chrome、Firefox、Operaがある。

その他、JavaアプレットによるP2Pマルチキャスト配信も使われている。
通信経路の暗号化

HTTPベースのプロトコルは、HTTPの代わりにHTTPSを通すことで通信経路の暗号化が可能。

RTMPS
アドビが開発した、RTMP及びSSLに基づくFlash用の暗号化ストリーミングプロトコル。リバースエンジニアリングによって仕様が解析されているため、多くのオープンソースソフトウェアがこの再生及び送出に対応している。

RTMPE
アドビが開発した、RTMP及び
ディフィー・ヘルマン鍵共有に基づくFlash用の暗号化ストリーミングプロトコル。リバースエンジニアリングによって仕様が解析されているため、多くのオープンソースソフトウェアがこの再生及び送出に対応している。設計に欠陥があり、中間者攻撃が可能という脆弱性が存在する[4][5]

Clear Key
W3C標準のEncrypted Media Extensionsで規定されている暗号化方式。Google Chromeなどが復号に対応している。

HLS暗号化
AES-128を使った暗号化。
ストリーミング用DRM

ストリーミング形式では配信目的のためにコピーガードが用意されていることが多く、映像や音楽をファイルに保存することを困難にさせることができる。ただし、コピーガードは視聴者の見られる環境を狭め、視聴者の合法的な利用を妨害し、競合他社の製品も排除するという設計の欠陥を故意に作り出すため批判されており(Defective by Design)、何時でも何処でもどんなデバイスでもオンデマンドで見られることを目指すニューメディア(New media)には使われないことが多い。
UltraViolet

Google Widevine DRM
AES-128 CTRを使ったDRM。Common Encryption(CENC、ISO/IEC 23001-7)に基づく
[6]。MPEG-DASHで使うことができる。ChromeやAndroidが復号に対応している。オープンソースのBento4[7][8]が暗号化に対応している。FFmpeg[9]やedash-packagerやMP4BOX[10]が暗号化及び復号の両方に対応している。2016年現在、GoogleのWidevine DRMの実装に問題が見つかっている[11]

Microsoft PlayReady
AES-128 CTRを使ったDRM。Common Encryption(CENC、ISO/IEC 23001-7)に基づく[6]。Microsoft Smooth StreamingやMPEG-DASHで使うことができる。Internet ExplorerやWindows PhoneやSilverlightが復号に対応している。Microsoft Expression EncoderやAzure Media Services samples、オープンソースのBento4[7][8]が暗号化に対応している。FFmpeg[9]やMP4BOX[10]が暗号化及び復号の両方に対応している。

Adobe Primetime DRM
旧:Adobe Access DRM。pRTMPやPHDSで使うことができる。Adobe Flash PlayerやFirefox 38以降のWindows版32bitバイナリー[12]が復号に対応している。Adobe Media Serverが暗号化に対応している。

Marlin DRM
多くのIP-TVが復号に対応している。MPEG DASHのMP4コンテナではCommon Encryptionに基づき、MPEG DASHのMPEG2-TSコンテナではMarlin BBTSに基づく[13]。オープンソースのBento4が暗号化に対応している[7][8]

OMA DRM v2.0
多くのフィーチャーフォンが復号に対応している。ファイル形式にはDCFとPDCFが存在する[14]。PDCFは3GPPのPSSに基づいている[14]。構文以外はISMACryp(英語版)と互換性がある[15]
レガシー

これらはレガシーであり、ハリウッドスタジオ(除ディズニー)ではUltraViolet対応のDRMを推進している。

WMDRM
楕円曲線暗号を使ったDRM。MS-RTSPやMMSで使うことができる。Windows Media PlayerやWindows Phoneが復号に対応している。Windows Media Rights Manager(WMRM)が暗号化に対応していた。Windows 10 Anniversary Updateで、WMDRMの復号が削除され、WMDRMで暗号化されたメディアの視聴が不可能となった
[16]

Helix DRM
RealRTSPで使うことができる。Real Playerが復号に対応している。Helix Universal Server(ディスコン[17])が暗号化に対応していた。

FairPlay
QuickTime Playerが復号に対応している。2016年、Microsoft AzureがFairPlayの暗号化に対応した[18]
主なストリーミングサーバ

現在はHTTPベースのストリーミングプロトコルの普及により、動画をフラグメント化してHTTPサーバで送出することが主流になりつつある。

Adobe Media Server(旧:Adobe Flash Media Server(FMS))
アドビが提供しているWindows・Linux向けのストリーミングサーバ。コピーガードが有効な動画を、PCにおける普及率が高いマルチプラットフォームのFlash Playerに配信する唯一の手段であったため、現在のデファクトスタンダードとなっている。Flash Playerが使えないiOSへの配信にも対応しており、Protected HLSプロトコルを使うことによってブラウザから再生可能にできる。同じくFlash Playerが使えないAndroid 4.1以降への配信には、再生側にAdobe Air製のアプリをインストールさせる必要がある。なお、コピーガードを使うにはプロフェッショナル版以上を使う必要がある。バージョンによって最大同時接続数やプロセス数にライセンス的な制限があるため、大規模配信する場合にはサーバ一台に対して複数ライセンスを購入し、ライセンスをスタックする必要がある。

Wowza Streaming Engine(旧:Wowza Media Server)
Wowza Media Systems が開発している動画ストリーミングサーバ。RTMPを使い、Adobe Flash Playerと通信できるが、クライアント・サーバー間のリモートプロシージャコールにも対応しており、その際、サーバー側は Java で記述する。バージョン4.0より、Webブラウザベースで管理出来るGUIを搭載した。

Red5(英語版)
Javaで書かれたオープンソースのFlash Player向けマルチプラットフォームストリーミングサーバ。ライセンスはApache License 2.0(LGPLv3から変更された)。RTMPによる動画配信、RTMPEによる暗号化動画配信だけでなく、Flashの共有オブジェクトやRemotingなどにも対応している。ただし、プログラミング言語はJavaであり、FMS向けにActionScriptで書かれたサーバサイドスクリプトは直接動かすことができない。

nginx-rtmp-module(英語版)
NGINXを基にしたオープンソースのストリーミングサーバ。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:41 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef