UbuntuにRed5を入れてストリーミング配信をする

最近は、ストリーミング配信をするにしても、フリーでサーバを立てられるので、すばらしい。

Red5とは、RTMP(Real-Time Messaging Protocol)に準拠しているため Flash Media Server互換と位置づけられています。

Red5を使うことで、動画のストリーム配信や、インタラクティブな機能を有したアプリケーションを開発することができます。

red5日本ユーザ会のページからの引用ですが

  • 音声ファイル(MP3, AAC, M4A)や動画ファイル(FLV,F4V,MP4)のストリーミング配信
  • Webカメラなどからのストリーミング映像を録画する
  • 複数のクライアント間で共有できるオブジェクト(SharedObject)をサポート
  • 映像や音声などのライブ映像をリアルタイムに配信する
  • クライアントサイドからサーバーサイドのメソッド呼び出し
  • サーバサイドからクライアントサイドのメソッド呼び出しも可能であり、これによりプッシュ型のアプリケーションも実現可能

という機能があるようです。

このred5で動画のストリーミング配信のサーバを立てて、クライアント(ブラウザ)側ではFlashのプレイヤーで再生する、というのが今回の目標です。

使う物としては

サーバにUbuntu

当然red5

クライアント用プレイヤーとしてFlowPlayer

という組み合わせでやってみたいと思います。

red5はjavaで作られているので、まずはjavaをインストールします。

Ubuntuのパッケージだと、openjdkがあるので、これを入れます。

これでjavaが入りました。

次に、red5をダウンロードします。

以下のサイトからとりあえず最新版をダウンロード

http://www.red5.org/news/

解凍

red5を起動します

http://localhost:5080/
とブラウザでアクセスして、red5のページが表示されたら、問題なく起動できました。

続いてデモ用のプラグインを入れます。

Install a ready-made application

というリンクをクリックします。

表示されたリストの中で、「oflaDemo」というのをクリックして、installボタンを押します。

完了したら、http://localhost:5080/ へ戻って、Launch a demoというリンクをクリックします。

OFLA Demoの view Demoをクリックして、デモページを開きます。

上のconnectボタンの上の入力欄に、rtmp://localhost/oflaDemo と入力してconnectボタンを押す

すると、Libraryにいくつかファイルが並ぶので、それをクリックすると、video に映像が表示される。

そうすれば、ストリーミングの疎通は完了。

今回は、手っ取り早くストリーミングを実現したいので、このolfaDemoのサンプルを活用して実現します。

次に、クライアントとなるFlowPlayerの設置です。

まず、

http://flowplayer.org/

からFlowPlayerの最新版をダウンロードします。

ダウンロードするのはフリー版

解凍

解凍して出来たファイルをred5のディレクトリにコピーします。

htmlファイルを作成します。

作成したhtmlファイルをブラウザから見てみます。

http://localhost:5080/demos/ofla_demo.html

これで、映像が表示されれば、ストリーミング配信環境はほとんど構築完了です。

ストリーミングさせるファイルは

red5-1.0.0/webapps/oflaDemo/streams

ディレクトリにおいてあるので、ここにflvファイルを置くことで追加出来ます。