付録 D : サーバ ファイルの構文
この付録では、サーバ宛先ファイルの作成方法と編集方法を説明します。 サーバ宛先ファイルには、RealPlayer へのブロードキャスト用にライブ ストリームを Helix Server に転送するための設定が記録されます。
 |
備考 : XML 構文に精通していない場合は、XML のネームスペース、タグ、属性、および値について、付録 A を参照してください。
|
サーバ宛先ファイルについて
サーバ宛先ファイルには、ライブ ストリームのブロードキャストに使用する Helix Server の IP アドレスまたは DNS 名を指定します。 マルチキャストの場合、サーバ宛先ファイルにはマルチキャスト アドレスを指定します。 宛先ファイルには、エラー修正パラメータや認証パスワードなど、サーバで必要となるプロパティも定義します。 これらのプロパティは、ブロードキャスト タイプによって異なります。 たとえば、プッシュ ブロードキャストではサーバ宛先ファイルにエラー修正パラメータを設定しますが、プル ブロードキャストの場合は設定しません。
サーバ宛先ファイルの作成後、RealProducer のメイン インストール ディレクトリ下にある servers ディレクトリにファイルをコピーします。 コピー後、その宛先をグラフィカル アプリケーション (「サーバ テンプレートでの作業」を参照) やコマンド ライン アプリケーション (「出力と宛先のオプション」を参照) で使用できるようになります。 サーバ宛先ファイルのファイル拡張子は .rpsd です。
 |
詳細情報 : サーバ宛先ファイルの作成や修正を行う場合は、第 10 章で説明しているブロードキャストの検討事項を理解していることが必要です。
|
 |
ヒント : RealProducer には、すべてのブロードキャスト タイプのためのサーバ宛先ファイルのサンプルが含まれています。 これは、RealProducer のメイン インストール ディレクトリ下の samples/servers ディレクトリに格納されています。 これらのファイルの中の 1 つを基にして、独自のサーバ宛先ファイルを作成することができます。 または、第 11 章の説明に従い、グラフィカル アプリケーションを使用してファイルを作成することもできます。
|
プッシュ サーバの構文
プッシュ サーバのファイルでは、アカウント ベースのブロードキャスト、パスワードのみによるブロードキャスト、マルチキャストを設定することができます。 XML 宣言タグに続いて、<destination> タグで開始され </destination> タグで終了する単一のリスト内に、すべてのプロパティを定義します。 次に示すように、xsi:type プロパティの pushServer 値により、サーバの定義がプッシュ ブロードキャストであると識別されます。
<?xml version="1.0" encoding="UTF-8"?> <destination xsi:type="pushServer" xmlns="http://ns.real.com/tools/server.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.real.com/tools/server.2.0 http://ns.real.com/tools/server.2.0.xsd"> ...すべてのプッシュ サーバのプロパティ... </destination>
|
第 11 章の次の各セクションに、さまざまなタイプのプッシュ ブロードキャストに対する、ブロードキャスト プロパティの機能に関する説明があります。
プッシュ サーバのプロパティ
次の表は、プッシュ サーバで使用されるプロパティをまとめたものです。 各プロパティは、<destination> リスト内の個別のタグとして定義します。
プッシュ サーバのプロパティ
| プロパティ |
値 |
機能 |
address type="string" |
IP アドレスまたは DNS 名 |
サーバの IPv4 / IPv6 アドレス、または DNS 名を指定します。 マルチキャストの場合は無視されます。 |
allowResends type="bool" |
true|false |
デフォルト値 true に設定されている場合は、サーバによるパケット再送信要求を受け入れます。 transport が tcp または udp/multicast に設定されている場合は無視されます。 |
authType type="string" |
account-based| single-password |
使用する認証タイプを設定します。 デフォルトの account-based では、ユーザ名とパスワードが必要となります。 single-password タイプでは、有効なパスワードのみが必要となります。 パスワードのみによるブロードキャストおよびマルチキャストの場合は、single-password を使用します。 |
enableTCPReconnect type="bool" |
true|false |
デフォルト値 true に設定されている場合は、切断されたブロードキャスト ストリームを回復します。 transport が tcp の場合にのみ使用します。 |
endPort type="uint" |
ポート番号 |
サーバがブロードキャスト データの受信に使用するポート範囲の末尾のポートを定義します。 可能な値は 1 〜 65535 です。 デフォルトは 30020 です。 このプロパティはアカウント ベースのブロードキャストでは無視されます。 |
fecOffset type="uint" |
秒 |
fecPercent が 100 の場合に、指定した秒間隔で冗長パケットを補正します。 デフォルトは 0 です。 |
fecPercent type="uint" |
0-50|100 |
エラー修正パケットにパーセント単位でストリームを割り当てます。 可能な値は 0 〜 50 の範囲の整数、または 100 です。 51 〜 99 の値を指定した場合は、100 とみなされます。 デフォルトは 0 です。 |
listenAddress type="string" |
IP アドレス |
RealProducer がパケットの再送信要求のリッスンに使用する IPv4 / IPv6 アドレスを設定します。 デフォルトの 0 を設定すると、Helix Server は IP ヘッダからリッスン アドレスを取得します。この設定はほとんどのブロードキャストにおいて正常に動作します。 このプロパティはマルチキャストでは無視されます。 |
metadataResendInterval type="uint" |
秒 |
transport が udp の場合に、メタデータ再送信の間隔を秒数で定義します。 transport が tcp の場合は無視されます。 デフォルトは 30 です。 |
multicastAddress type="string" |
マルチキャスト IP アドレス |
使用する IPv4 / IPv6 のマルチキャスト アドレスを指定します。 transport が udp/multicast 以外である場合は無視されます。 |
multicastTTL type="uint" |
ルーターのホップ数 |
マルチキャストで許可されるルーターのホップ数を設定します。 有効な値は 1 〜 255 です。 デフォルトは 16 です。 他のタイプのブロードキャストでは無視されます。 |
name type="string" |
名前 |
グラフィカル アプリケーションが使用する、サーバの宛先の名称を指定します。 この名前はジョブ ファイルでのみ使用されます。 サーバ宛先ファイルでは、ファイル名が宛先名として使用されます。 |
password type="string" |
文字列 |
サーバ接続を認証します。 アカウント ベースのブロードキャストでは、サーバの認証データベースによってパスワードが指定されます。 パスワードのみによるブロードキャストまたはマルチキャストでは、レシーバ定義によってパスワードが指定されます。 |
path type="string" |
パス名 |
アーカイブやスプリットなどのサーバ機能で使用される、オプションの仮想パスを定義します。 news/」のように、最後にスラッシュを含めます。 値は URL 内で、「news/live.rm」といったように、ストリーム名の前に表示されます。 |
pluginName type="string" |
rn-server-rbs |
ストリーム接続を処理するプラグインを指定します。 |
port type="uint" |
ポート番号 |
アカウント ベースのブロードキャストの場合は、サーバ上の HTTP ポートを定義します。 値は通常、80 です。 パスワードのみのブロードキャストまたはマルチキャストの場合は、サーバがブロードキャスト データの受信に使用するポート範囲の最初のポートを定義します。 可能な値は 1 〜 65535 です。 デフォルトは 30001 です。 |
savePassword type="bool" |
true|false |
true に設定すると、パスワードがプレーン テキストとしてサーバ宛先ファイルに保存されます。 このパスワードはグラフィカル アプリケーションでのみ使用されます。 コマンド ライン アプリケーションでは、コマンド ラインでパスワードを入力する必要があります。 デフォルトは false です。 |
statisticsUpdateInterval type="uint" |
1 〜 604800 |
アカウント ベースのブロードキャストの場合にのみ、サーバからの統計の更新間隔を秒数で設定します。 デフォルトは 10 です。 |
streamname type="string" |
ストリーム名 |
ブロードキャスト URL で使用されるストリーム名を定義します。 .ra、.rv、.rmまたは.rmvbといったように、適切な拡張子を使用する必要があります。 |
TCPReconnectInterval type="uint" |
1 〜 3600 |
TCP 転送を使用するアカウント ベースのブロードキャスト、またはパスワードのみによるブロードキャストで、回復を試行するまでの待ち時間を秒数で指定します。 デフォルトは 10 です。 |
transport type="string" |
udp/unicast| udp/multicast| tcp |
ブロードキャストの転送とモードを定義します。 デフォルトは udp/unicast です。 パスワードのみによるブロードキャストおよびマルチキャストでは、この値はレシーバの設定と一致している必要があります。 |
username type="string" |
名前 |
ブロードキャストを認証します。 サーバは、認証データベースでユーザ名とパスワードを定義します。 アカウント ベースのブロードキャストでのみ使用します。 |
プッシュ サーバの例
次の各セクションでは、プッシュ ブロードキャストの 3 つの標準的なタイプである、アカウント ベース、パスワードのみ、マルチキャストの例を示します。
アカウント ベースの例
次の例は、アカウント ベースのブロードキャストを示しています。 authType プロパティはブロードキャスト タイプを定義しています。 username プロパティと password プロパティには、Helix Server の認証データベースのログイン資格情報が表示されています。
<?xml version="1.0" encoding="UTF-8"?> <destination xsi:type="pushServer" xmlns="http://ns.real.com/tools/server.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.real.com/tools/server.2.0 http://ns.real.com/tools/server.2.0.xsd"> <pluginName type="string">rn-server-rbs</pluginName> <authType type="string">account-based</authType> <address type="string">helixserver.example.com</address> <port type="uint">80</port> <endPort type="uint">0</endPort> <username type="string">realmedia-encoder</username> <password type="string">453ERP098zu</password> <savePassword type="bool">true</savePassword> <transport type="string">udp/unicast</transport> <listenAddress type="string">0</listenAddress> <fecPercent type="uint">20</fecPercent> <fecOffset type="uint">10</fecOffset> <metadataResendInterval type="uint">30</metadataResendInterval> <allowResends type="bool">true</allowResends> <statisticsUpdateInterval type="uint">2</statisticsUpdateInterval> </destination>
|
パスワードのみの例
次の例は、authType プロパティ値で示されているように、パスワードのみによるブロードキャストです。 ユーザ名は存在せず、ログイン パスワードが Helix Server のレシーバ設定で定義されています。 metadataResendInterval プロパティには、Helix Server が切断されたブロードキャスト ストリームを回復するまでの時間が定義されています。
<?xml version="1.0" encoding="UTF-8"?> <destination xsi:type="pushServer" xmlns="http://ns.real.com/tools/server.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.real.com/tools/server.2.0 http://ns.real.com/tools/server.2.0.xsd"> <pluginName type="string">rn-server-rbs</pluginName> <authType type="string">single-password</authType> <address type="string">helixserver.example.com</address> <port type="uint">30001</port> <endPort type="uint">30020</endPort> <savePassword type="bool">true</savePassword> <password type="string">546zRGW23</password> <transport type="string">udp/unicast</transport> <listenAddress type="string">172.23.104.188</listenAddress> <fecPercent type="uint">20</fecPercent> <fecOffset type="uint">10</fecOffset> <metadataResendInterval type="uint">30</metadataResendInterval> <allowResends type="bool">true</allowResends> <enableTCPReconnect type="bool">true</enableTCPReconnect> <TCPReconnectInterval type="uint">10</TCPReconnectInterval> <statisticsUpdateInterval type="uint">2</statisticsUpdateInterval> </destination>
|
マルチキャストの例
次の例は、マルチキャスト用のサーバ宛先ファイルを示しています。 Helix Server のレシーバ設定で定義されたパスワードが必要であるため、authType プロパティは single-password に設定されています。 transport プロパティの udp/multicast 値によってマルチキャストが作成されます。 multicastAddress プロパティは、すべての Helix Server レシーバによってモニタされるマルチキャスト アドレスを定義します。
<?xml version="1.0" encoding="UTF-8"?> <destination xsi:type="pushServer" xmlns="http://ns.real.com/tools/server.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.real.com/tools/server.2.0 http://ns.real.com/tools/server.2.0.xsd"> <pluginName type="string">rn-server-rbs</pluginName> <authType type="string">single-password</authType> <port type="uint">30001</port> <endPort type="uint">30020</endPort> <savePassword type="bool">true</savePassword> <password type="string">3542zdf22</password> <transport type="string">udp/multicast</transport> <multicastAddress type="string">225.229.1.1</multicastAddress> <multicastTTL type="uint">16</multicastTTL> <fecPercent type="uint">20</fecPercent> <fecOffset type="uint">10</fecOffset> <metadataResendInterval type="uint">30</metadataResendInterval> <statisticsUpdateInterval type="uint">2</statisticsUpdateInterval> </destination>
|
プル サーバの構文
プル サーバのファイルでは、Helix Server がブロードキャスト ストリームを RealProducer から要求するブロードキャストを定義します。 XML 宣言タグに続いて、<destination> タグで開始され </destination> タグで終了する単一のリスト内に、すべてのプロパティを定義します。 次に示すように、xsi:type プロパティの pullServer 値により、サーバの定義がプル ブロードキャストであると識別されます。
<?xml version="1.0" encoding="UTF-8"?> <destination xsi:type="pullServer"
xmlns="http://ns.real.com/tools/server.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.real.com/tools/server.2.0 http://ns.real.com/tools/server.2.0.xsd"> ...すべてのプル サーバのプロパティ... </destination>
|
プル サーバのプロパティ
次の表は、プル ブロードキャストで使用されるプロパティをまとめたものです。 各プロパティは、<destination> リスト内の個別のタグとして定義します。
プル サーバのプロパティ
| プロパティ |
値 |
機能 |
listenAddress type="string" |
IP アドレス |
RealProducer がプル要求のリッスンに使用する IPv4 / IPv6 アドレスを定義します。 DNS 名は使用しないでください。 値に 0 を指定すると、RealProducer を実行するコンピュータのネットワーク インターフェース カードのデフォルトのアドレスが使用されます。 |
listenPort type="uint" |
ポート番号 |
RealProducer がプル要求をモニタするポートを設定します。 可能な値は 1 〜 65535 です。 デフォルトは 3031 です。 同じコンピュータ上で実行される複数のブロードキャストに対して、同一のポートを使用することができます。 |
name type="string" |
名前 |
グラフィカル アプリケーションが使用する、サーバの宛先の名称を指定します。 この名前はジョブ ファイルでのみ使用されます。 サーバ宛先ファイルでは、ファイル名が宛先名として使用されます。 |
password type="string" |
文字列 |
ブロードキャストを認証します。 レシーバ設定のサーバ パスワードがこの値と一致している必要があります。 |
path type="string" |
パス名 |
アーカイブやスプリットなどのサーバ機能で使用される、オプションの仮想パスを設定します。 news/」のように、最後にスラッシュを含めます。 値は URL 内で、「news/live.rm」といったように、ストリーム名の前に表示されます。 |
pluginName type="string" |
rn-server-rbs |
ストリーム接続を処理するプラグインを指定します。 |
savePassword type="bool" |
true|false |
true に設定すると、パスワードがプレーン テキストとしてサーバ宛先ファイルに保存されます。 デフォルトは false です。 |
serverTimeout type="uint" |
0 〜 86400 |
RealProducer がサーバからキープ アライブ メッセージを受信しなくなってから、ブロードキャスト パケットを停止するまでの待ち時間を秒数で設定します。 デフォルトは 30 です。 |
streamname type="string" |
ストリーム名 |
ブロードキャスト URL で使用されるストリーム名を定義します。 .ra、.rv、.rmまたは.rmvbといったように、適切な拡張子を使用する必要があります。 |
プル サーバの例
次の例は、プル ブロードキャストを示しています。 RealProducer は、listenAddress と listenPort によってそれぞれ定義された IP アドレスとポートを使用して、Helix Server のブロードキャスト要求をリッスンします。 password プロパティによってストリームへのアクセスが検証されます。 プル ブロードキャストでは、転送エラー修正を使用するかどうかといったブロードキャスト パラメータの多くが、ブロードキャストを開始するレシーバによって指定されます。
<?xml version="1.0" encoding="UTF-8"?> <destination xsi:type="pullServer" xmlns="http://ns.real.com/tools/server.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://ns.real.com/tools/server.2.0 http://ns.real.com/tools/server.2.0.xsd"> <pluginName type="string">rn-server-rbs</pluginName> <listenAddress type="string">172.23.104.188</listenAddress> <listenPort type="uint">3031</listenPort> <savePassword type="bool">true</savePassword> <password type="string">WEPO342zqd</password> <serverTimeout type="uint">30</serverTimeout> </destination>
|