>お楽しみコーナー>Linux>ストリーミング サイトマップ 最終更新日:2005/07/22

センリュウのホームページへ ようこそ!

 ストリーミング(ライブ配信)システム  Helix 

 Real Networks社のストリーミング・サーバー(Helix server)は、自社のReal MediaだけでなくWindows MediaやQuick Time、MPEGなどさまざまなメディアフォーマットを配信サポートしています。そこで、このHelix(無料版)を使ってみることにしました。
 以下、サーバーのIPアドレスを、333.139.162.227に設定したとします。

ストリーミング・サーバー(Helix server)

カーネルは2005年4月現在、2.4.18に限定されているので注意。Redhat8.0やTurboLinux8.0などが使えます。
●ダウンロード
 http://www.jp.realnetworks.comよりBasic版(無料版)/Helix server-Basicを選択。
 @個人データの記入(メールアドレスは正確に。)
 Aアンケートへの回答
 Bダウンロード開始
●インストール
 @まず、メールでライセンスファイルが送られてくるので、これを解凍しておく。
 Ars905-linux-22libc6-ia32.binを実行ファイルにして、起動。ライセンスファイルをフルパスで指定。
  ライセンス確認文が続くが、enterを押していくと最後までながれて、最初にインストールディレクトリの指定とID/パスワードの入力となる。
 Bポートの設定は基本的にデフォルトのまま(enterキー)。
  最後のAdministratorへのアクセスポートはメモしておく。
  PNA   7070
  RTSP  554
  HTTP  8080 (これだけ8080に変更しておく。80だと起動時にエラーとなる。)
  MMS  1755
  Admin  26508 インストールのつど変わる(設定で使うのでメモしておく)
  これらはrmserver.cfgを編集すれば変更できる。
●起動
 起動は、# /解凍したディレクトリ/Bin/rmserver  /解凍したディレクトリ/rmserver.cfg  &
 これを、rc.localに書き込んでおく。
●サーバーの設定
 http://333.139.162.227:19945/admin/index.html  (http://サーバーのIPアドレス:Administratorへのアクセスポート)
 なぜか自分自身からうまくつながらなかったが、windowsから呼び出すと大丈夫だった(面倒ならrmserver.cfgを直接編集してもよい)。
 IDとパスワードの入力が求められるので、上のIDとパスワードを入力。
 server setup→ports ここにポート情報がある。
          mount points /Content/など
          HTTP delivery /ramgen/など
 Logging&Monitoring→Server Monitor 接続のモニターができる。
 Broadcasting→Realnetworks Encoding マウントポイントがencoder、ポートが4040を確認しておく。
●ポートの設定
 RTSPプロトコルを使う場合、tcpとudpの554を開けておく。
 ライブを行う場合は、映像などを取り込むパソコンとの間で、ポート4040も開けておく必要があります。

エンコーダー(Helix Producer)
ここではwindowsマシンにインストール。

ダウンロードとインストール
 上と同様にBasic版realProducerをダウンロード。

使用方法
画面左(エンコードの入力側)
 Input file ファイルを使用する場合
 Devices  USBカメラなどのデバイスを使用する場合(Audio、Videoのドライバを選択する)
画面右(エンコード出力側)
 ●ファイルに出力する場合は、左下の1番目のアイコンで出力先ファイル(.rmファイル)を指定→encodeボタン。
  ストリーミング・サーバーのContentフォルダに置いておく。
 ●ストリーミング・サーバーにストリーミング仮想ファイル(=ライブ)として出力する場合は、2番目のアイコン。
  Destination name  適当な名前(適当にlive)
  Stream name  仮想ファイル名(適当にlive.rm)
  Broadcast method  「Legacy push」でないとダメだった。
  Server address  333.139.162.227(Helixサーバーの指定)
  Path(Optional)  なにも書かなくてよい。
  Port  サーバーのBroadcastingの設定に会わせる。
  Transport  UDPまたはTCP。
  Username  サーバーへのアクセスID
  Password  そのパスワード
  これで、encodeボタンを押すとエンコードが開始され、サーバーに仮想ファイル(=ライブ)として出力されていく。
  サーバーのLogging&Monitoring→Server Monitorでモニターができる。



ホームページで見せる

相手にRealPlayerがインストールされていなければならない。
もし、もっていなければhttp://japan.real.com/player/より無償版をダウンロードしてもらうようにしておくとよい。

●ポップアップタイプ(外部でプレイヤーを起動して表示するタイプ)
オンデマンド(エンコードされたファイルから見る)
  .rmファイルは、サーバーのContentフォルダに置いておく。
  <a href="rtsp://333.139.162.227/test.rm">***</a>
ライブ(サーバーに連続的に送られているストリーミング仮想ファイルを見る)
  <a href="rtsp://333.139.162.227/encoder/live.rm">***</a>
これで、自動的にRealPlayerが起動して一応見ることができるが、 下記の理由で、とりわけストリーミング・サーバーを使わないhttpサーバーからの配信ではメタファイルを使用するのが普通。

メタファイル(.ram)を利用する
・ストリーミング・サーバーの場合、サーバーを隠す。
・本体をダウンロードされないようにする。
・httpサーバーから配信する場合、直接<a href="http://www.kaisha.co.jp/test/test.rm">***</a>とするとキャッシュにダウンロードしてからの再生となってしまう。これを避けるためには、httpサーバーから配信する場合ではメタファイルが必須。
記述例
  <a href="video.ram">***</a>
そして、このvideo.ramファイルに次のように書き込んでおく。
  オンデマンド rtsp://333.139.162.227/test.rm
          httpサーバーから疑似配信する場合 http://www.kaisha.co.jp/test/test.rm
  ライブ rtsp://333.139.162.227/encoder/live.rm

●エンベッドタイプ(埋め込みタイプ、プラグイン再生タイプ)
メタファイルは、.rpmを使う(拡張子が変わるだけ)。
例1
<object id="video1" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" height="224" width="320">
<param name="controls" value="ImageWindow">
<param name="console" value="clip1">
<param name="autostart" value="false">
<param name="src" value="live.rpm">
<embed src="live.rpm" type="audio/x-pn-realaudio-plugin" cosole="clip1" controls="ImageWindow" height="224" width="320" autostart="false">
</embed>
</object>
<br>
<object id="video1" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" height="30" width="320">
<param name="controls" value="StatusBar">
<param name="console" value="clip1">
<embed src="live.rpm" type="audio/x-pn-realaudio-plugin" cosole="clip1" controls="StatusBar" height="30" width="320" autostart="false">
</embed>
</object>
<br>
<object id="video1" classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" height="30" width="320">
<param name="controls" value="ControlPanel">
<param name="console" value="clip1">
<embed src="live.rpm" type="audio/x-pn-realaudio-plugin" cosole="clip1" controls="ControlPanel" height="30" width="320" autostart="false">
</embed>
</object>
例2
<OBJECT ID=RAOCX CLASSID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" HEIGHT="320" WIDTH="240">
<PARAM NAME="CONTROLS" VALUE="ImageWindow">
<PARAM NAME="AUTOSTART" Value="true">
<PARAM NAME="SRC" VALUE="live.rpm">
<EMBED height="240" width="320" controls="ImageWindow" src="live.rpm" type="audio/x-pn-realaudio-plugin" autostart=true>
</OBJECT>


ストリーミング配信テストページはこちら

履歴 2005/04 更新 
    2002/12 作成