カスタム検索
このエントリーをはてなブックマークに追加
tomo.gif (1144 ツバツイツト)line.gif (927 ツバツイツト)line.gif (927 ツバツイツト)line.gif (927 ツバツイツト)To previous pageTo home pageMailing to me

Helix Universal Serverの小技

Modified: 29 April 2003

参考ページ(1): Helix Universal Server アドミニストレーション ガイド
http://service.jp.real.com/help/library/guides/helixuniversalserver/realsrvr.htm

参考ページ(2): Helix Universal Proxy アドミニストレーション ガイド
http://service.jp.real.com/help/library/guides/helixuniversalproxy/proxy9.htm


ストリーミングの配信プロトコルを確認する方法 (26 April 2003
ストリーミングの配信プロトコルを指定する方法 (26
April 2003
接続数や帯域の最大値を設定する方法 (26 April 2003

ファイヤウオールのポート設定 (26 April 2003
ポート番号の確認と変更 (26 April 2003

RealMediaのメタファイルを作成する方法 (28 April 2003
WindowsMediaのメタファイルを作成する方法 (28 April 2003

IPマスカレード環境でRealMediaのメタファイル(ramgen)を自動生成する方法 (29 April 2003
IPマスカレード環境でWindowsMediaのメタファイル(asxgen)を自動生成する方法 (29 April 2003

ブート時に自動起動させる方法 (26 April 2003

Helix Universal Serverでライブカメラを配信する方法 (11 February 2003
Linux版のRealPlayerの入手とインストール (11 February 2003)
コンテンツのディレクトリを変更する方法
9 February 2003


IPマスカレード環境でRealMediaのメタファイル(ramgen)を自動生成する方法

IPマスカレード環境で、メタファイル(ramgen)を自動生成する方法で配信する場合、"rmserver.cfg"に設定を追加する必要があります。

サーバー側の設定 - メタファイルの設定

     :

<!-- RAM File Generator -->
    <List Name="RAM File Generator">
        <Var ShortName="pn-ramgen"/>
        <Var MountPoint="/ramgen/"/>
    </List>

     :

以下の1行を追加します。

     :

<!-- RAM File Generator -->
    <List Name="RAM File Generator">
        <Var ShortName="pn-ramgen"/>
        <Var MountPoint="/ramgen/"/>
        <Var Hostname="tomo.no-ip.com"/>
    </List>

     :


クライアント側の設定 - rtspの記述

rtsp://tomo.no-ip.com/streaming/aaaa.rm

上記指定を、メタファイルなしで配信するには、HTMLファイルの中で、以下のように指定します。

                :
                :
<a href=http://tomo.no-ip.com/ramgen/streaming/aaaa.rm>リアルメディアの再生</a>
                :
                :

IPマスカレード環境でWindowsMediaのメタファイル(asxgen)を自動生成する方法

IPマスカレード環境で、メタファイル(asxgen)を自動生成する方法で配信する場合、"rmserver.cfg"に設定を追加する必要があります。

サーバー側の設定 - メタファイルの設定

     :

<!-- ASX File Generator -->
    <List Name="ASX File Generator">
        <Var ShortName="pn-asxgen"/>
        <Var MountPoint="/asxgen/"/>
        <Var HaveAltHTTPURL="0"/>
    </List>

     :

以下のように1行を設定する。

     :

<!-- ASX File Generator -->
    <List Name="ASX File Generator">
        <Var ShortName="pn-asxgen"/>
        <Var MountPoint="/asxgen/"/>
        <Var HaveAltHTTPURL="0"/>
        <Var Hostname="tomo.no-ip.com"/>
    </List>

     :


クライアント側の設定 -
mmsの記述

mms://tomo.no-ip.com/streaming/aaaa.wmv

上記指定を、メタファイルなしで配信するには、HTMLファイルの中で、以下のように指定します。

                :
                :
<a href=http://tomo.no-ip.com/ramgen/streaming/aaaa.wmv>Windowsメディアの再生</a>
                :
                :

接続数や帯域の最大値を設定する方法

Helixサーバーの管理画面を開き、「Server Setup」の「Connection Control」を選択すると、以下のように、現在の設定が確認できます。

接続数は、「Maximum Client Connections」で指定します。 "0"は、ライセンス数だけ接続できます。"Basic"版では、"10"です。

帯域は、「Maximum Bandwidth」で指定します。 "0"は無制限です。 "Kbps"で指定します。


ストリーミングの配信プロトコルを確認する方法

RealOnePlayerの場合

「ツール」から「再生データの統計」を開き、「ストリーム」タブを選択します。

この場合、UDPで転送されていることがわかります。


ストリーミングの配信プロトコルを指定する方法

RealOnePlayerの場合

「ツール」から「環境設定」を開き、「接続」の「ネットワーク転送」を選択します。

「ネットワーク転送」のところの「接続を手動で設定する」にチェックを入れて、「RTSP設定」ボタンをクリックします。

「RTSP設定」ボタンをクリックすると、以下のように転送プロトコルが、マルチキャスト、UDP、TCP、HTTPの4つから選択できます。


ファイヤウオールのポート設定

プロトコルの基礎知識

"Helix Universal Server" は、RTSP、MMS、PNAの3つのプロトコルをサポートしています。

RTSP rtsp:// RealOne Player、RealPlayer、QuickTime Player TCP と UDP、または TCP のみ
MMS mms:// Windows Media Player TCP と UDP、または TCP のみ
PNA pnm:// RealPlayer 5 以前 TCP と UDP、または TCP のみ


管理ページを外部から開くようにする設定

管理ページは、外部から開けるようにしないほうがいいですが、開けるようにしたい場合、以下のように設定します。

始点アドレス 終点アドレス プロトコル 始点ポート 終点ポート 説明
外部(ANY) 内部(サーバ) TCP 1024以上 24240 外部からの接続要求


RealOnePlayerでストリーム配信する場合

始点アドレス 終点アドレス プロトコル 始点ポート 終点ポート 説明
外部(ANY) 内部(サーバ) TCP 1024以上 554 外部からのRTSP接続要求
外部(ANY) 内部(サーバ) TCP 1024以上 7070 外部からのPNA接続要求
外部(ANY) 内部(サーバ) TCP 1024以上 (80) 外部からのHTTP接続要求
外部(ANY) 内部(サーバ) TCP 1024以上 1750 外部からのMMS接続要求
外部(ANY) 内部(サーバ) UDP 1024以上 34445-34459 外部からの応答
内部(サーバ) 外部(ANY) TCP 554 1024以上 外部へのTCP(RTSP)データ送信
内部(サーバ) 外部(ANY) TCP 7070 1024以上 外部へのTCP(PNA)データ送信
内部(サーバ) 外部(ANY) TCP 1750 1024以上 外部へのTCP(MMS)データ送信
内部(サーバ) 外部(ANY) マルチキャスト 1-65000 1024以上 外部へのMMSマルチキャスト送信
内部(サーバ) 外部(ANY) UDP 1024-5000 1024以上 外部へのUDP(MMS)データ送信
内部(サーバ) 外部(ANY) UDP 6970-32000 1024以上 外部へのUDPデータ送信


RealPlayer G2以前でストリーム配信する場合

PNAは、RealPlayer G2 (バージョン6) より前のバージョンの RealPlayer で使われているポートです。

始点アドレス 終点アドレス プロトコル 始点ポート 終点ポート 説明
外部(ANY) 内部(サーバ) TCP 1024以上 7070 外部からのPNA接続要求
外部(ANY) 内部(サーバ) TCP 1024以上 80 外部からのHTTP接続要求
内部(サーバ) 外部(ANY) TCP 7070 7070 外部へのデータ送信(TCP)
内部(サーバ) 外部(ANY) TCP 80 80 外部へのデータ送信(HTTP)
内部(サーバ) 外部(ANY) TCP 6970-6999 6970-6999 外部へのデータ送信(UDP)

RealMediaのメタファイルを作成する方法

メタファイルを作成する

以下の内容を、メタファイルとして、"aaaa.ram" で保存します。

rtsp://tomo.no-ip.com/streaming/aaaa.rm

HTMLの記述

hrefで、メタファイル(ram)を指定します。

                :
                :
<a href='http://tomo.no-ip.com/streaming/aaaa.ram>
リアルメディアの再生</a>
                :
                :

WindowsMediaのメタファイルを作成する方法

メタファイルを作成する

以下の内容を、メタファイルとして、"aaaa.asx" で保存します。

<asx version="3.0">
<entry>
<ref href="mms://tomo.no-ip.com/streaming/aaa.wmv">
</entry>
</asx>

HTMLの記述

hrefで、メタファイル(ram)を指定します。

                :
                :
<a href='http://tomo.no-ip.com/streaming/aaaa.asx>
Windowsメディアの再生</a>
                :
                :

ポート番号の確認と変更

Helixサーバーの管理画面を開き、「Server Setup」の「Ports」を選択すると、以下のように、現在の設定が確認できます。

変更後、下方の「Apply」ボタンをクリックすれば、変更できます。

コマンドプロンプトで確認と変更を行う場合、以下の設定ファイル(rmserver.cfg)を開いて行います。

        :
        :
        :

<!-- P O R T S -->
<!--UNIX customers must have root privileges to execute the server  -->
<!--with the RTSP port set to 554.                                  -->
<!--The following are the default ports that RealPlayer and         -->
<!--RealPlayer Plus clients will connect to for an URL that has     -->
<!--no port specified:                                              -->
<!--  RTSP:  554                                                    -->
<!--  PNM:   7070                                                   -->
<!--  HTTP:  80 (...then 8080 if 80 is unavailable)                 -->
<!--  MMS:   1755                                                   -->
<Var RTSPPort="554"/>
<Var PNAPort="7070"/>
<Var HTTPPort="80"/>
<Var MMSPort="1755"/>
<Var MonitorPort="9090"/>
<Var AdminPort="24240"/>

        :
        :
        :

ブート時に自動起動させる方法  

起動スクリプトの作成

以下のページで公開されています。
http://helix.dojyo.org/support.htm

以下は、上記ページを参考に、私なりに変更したものです。

"helix"というファイル名で作成します。

#!/bin/bash

# Helix Serverのインストールディレクトリ
export RMSERVER
RMSERVER=/opt/helix

Stop()
{
	# Helix Serverが既に起動しているかどうかをチェック
	# 起動してれば、停止処理、停止しておればその旨メッセージを出す
	pid=`ps -ef | grep rmserver | grep -v grep | head -n 1 | awk -F' ' '{print $2}'`
	if [ "${pid}" ]; then
		/bin/echo "Stopping HelixServer... "
		kill $pid
	else
		/bin/echo "HelixServer is already stopped."
	fi
}

Start()
{
	# Helix Serverが既に起動しているかどうかをチェック
	# 起動してれば、その旨メッセージを出す。停止しておれば、起動する
	pid=`ps -ef | grep rmserver | grep -v grep | head -n 1 | awk -F' ' '{print $2}'`
	if [ "${pid}" ]; then
		/bin/echo "The HelixServer already running."
		exit 1
	fi

	if [ -x $RMSERVER/Bin/rmserver ]; then
		/bin/echo "Starting HelixServer... "
		cd $RMSERVER
		./Bin/rmserver rmserver.cfg 1>/dev/null 2>/dev/null &
	fi
}

case "$1" in
	'start')
		Start
		;;
	'stop')
		Stop
		;;
	'restart')
		$0 stop
		sleep 5
		$0 start
		;;
	*)
		/bin/echo "Usage: $0 { start | stop | restart }"
		exit 1
		;;
esac

exit 0

"helix"というファイル名で保存します。


起動スクリプトのコピー

"/etc/init.d"にコピーします。

# cp helix /etc/init.d
# chmod 755 /etc/init.d/helix


起動設定をする

ランレベル3と5で設定します。

# cd /etc/rc.d/rc5.d
# ln -s ../init.d/helix S99helix
# ln -s ../init.d/helix K99helix
# cd /etc/rc.d/rc3.d
# ln -s ../init.d/helix S99helix
# ln -s ../init.d/helix K99helix

コンテンツのディレクトリを変更する方法

"rmserver.cfg"で設定します。

<?XML Version="1.0" ?>

<!-- Please read the configuration section of the manual -->
<!-- before adding any new entries to this file.         -->

       :
       :
       :

<!--            F I L E  S Y S T E M S          -->
<!--            ======================          -->
<List Name="FSMount">
    <!-- Local File System; Media -->
    <List Name="RealSystem Content">
        <Var ShortName="pn-local"/>
        <Var MountPoint="/"/>
        <Var BasePath="/helix/Content"/>
        <Var UseContentDistribution="1"/>
    </List>
    <!-- Local File System; Secure Media -->
    <!-- This section requires a Commerce license -->
    <List Name="RealSystem Secure Content">
        <Var ShortName="pn-local"/>
        <Var MountPoint="/secure/"/>
        <Var BasePath="/helix/Secure"/>
    </List>

       :
       :
       :

To previous pageTo home pageMailing to meJump to Top of pageline.gif (927 ツバツイツト)line.gif (927 ツバツイツト)tomo.gif (1144 ツバツイツト)
カスタム検索



このエントリーをはてなブックマークに追加