Red5 フリーソフトのFlashストリーミングサーバ ~サーバを構築しよう その1~
Red5 フリーソフトのFlashストリーミングサーバ
~サーバを構築しよう その1~
ストリーミングとは
(1) ストリーミングとは
「ストーリーミング」とは、一体、何なのか?
簡単に言うと、インターネットを通じて、主に音声や動画などを配信する技術のうちの1つです。
通常のファイル形式のものを開く場合は、全てのデータを一度パソコンにダウンロード・保存してから開いたり再生したりしますが、ストーリーミングでは、ダウンロードした分からすぐに再生されるていくため、非常に手軽に視聴することが可能です。
(2) ストリーミングのメリット
ストリーミングをすることによるメリットをざっと挙げてみます。
- ストリーミングをすることにより、送信するデータをパソコンのハードディスクに保存することなく、動画を視聴することができます。
- ストリーミングをすることにより、データのダウンロードが終わるまで待つ時間を省くことができ、気軽に動画を楽しむことができます。
- ストリーミングをすることにより、パソコンにデータは残りませんから、配信する側にとって、著作権のことを気にする必要がなく、また、2次的な頒布や流通について心配する必要がなくなります。
- ストリーミングをすることにより、かなり長時間の動画であっても、ハードディスクに保存しないので、自分のハードディスクの容量について気にする必要がなくなります。
- ストリーミングをすることにより、ustreamなどに代表されるようなリアルタイムのネット配信をすることができます。
(3) ストリーミングのプロトコルの種類
ストリーミングで使用されるプロトコルには、いろいろな種類あります。
RTSP (Real Time Streaming Protocol) | IETFで標準化されており、RealMedia / QuickTime / Windows Mediaを含む多くのプレーヤーで視聴可能。 |
MMS (Microsoft Streaming Server) | Windows Mediaのストリーミング配信に使用。MMSを再生できるプレーヤーは多いが、互換性に問題あり。 |
RTMP (Real Time Messaging Protocol) | AdobeによるFlash Video用のストリーミング・プロトコル。 |
HDS (Adobe HTTP Dynamic Streaming) | AdobeによるHTTPベースのFlash Video用ストリーミング・プロトコル。 |
HLS (HTTP Live Streaming) | AppleによるHTTPベースのストリーミング・プロトコル。 |
主なストリーミングサーバ
(1) Adobe Flash Media Server (FMS)
Adobeが提供しているWindows・Linux向けのストリーミングサーバです。
Flash ビデオのストリーミング配信や複数のユーザー間でのデータ共有をリアルタイムに実現するといったコミュニケーション機能に特化し、例えば、オンライン上での対戦ゲームやライブチャットなどのWebアプリケーションを作成することができます。
バージョン4.5で、Adobe Flash Playerに対応する端末(PCやMac、Android、BlackBerry)に加え、Flash非対応のiOS端末への配信が可能となりました。iOS向けにはサーバ側でFlashコンテンツを「HTTP Live Streaming(HLS)」フォーマットに変換して配信しています。
Flash Media Serverには、「Streaming Server」「Interactive Server」「Enterprise Server」の3種類があります。
Flash Media Serverには、「YouTube」や「mixi」などで採用されています。
Adobe Flash Media Serverの本家サイトは以下のURLを参照してください。
- Adobe Flash Media Server本家公式サイト: http://www.adobe.com/jp/products/flash-media-server-family.html
(2) Red5
Red5は、Javaで書かれたオープンソースのFlash Player向けマルチプラットフォーム・ストリーミングサーバをさします。
RTMP(Real-Time Messaging Protocol)に準拠しているため Flash Media Server互換と位置づけられています。
Red5を使うことで、動画のストリーム配信や、インタラクティブな機能を有したアプリケーションを開発することができます。
Red5の特徴としては、主に以下のようなものが挙げられます。
音声ファイル(MP3, AAC, M4A)や動画ファイル(FLV,F4V,MP4)のストリーミング配信が可能。 |
Webカメラなどからのストリーミング映像を録画することが可能。 |
複数のクライアント間で共有できるオブジェクト(SharedObject)をサポート。 |
映像や音声などのライブ映像をリアルタイムに配信することが可能。 |
クライアントサイドからサーバーサイドのメソッド呼び出しが可能。 |
サーバサイドからクライアントサイドのメソッド呼び出しも可能であり、これによりプッシュ型のアプリケーションも実現可能。 |
Red5は、mixiやニコニコ動画などで採用されています。
ちなみに、Red5の名前の由来は、映画「スターウォーズ」から来てるそうです。
デススターに攻撃を仕掛ける際にルーク・スカイウォーカーが呼ばれていた機体のコールサインが “Red Five”だったかと。
Red5の本家サイトは以下のURLを参照してください。
- 本家公式サイト: http://www.red5.org/
- 本家開発サイト: http://trac.red5.org/
- ソースコード: http://red5.googlecode.com/
- 日本Red5ユーザー会: http://www.red5.gr.jp/