Cisco ACNS ソフトウェア API ガイド Release 5.5
ACNS ソフトウェアのプログラム ファ イル
ACNS ソフトウェアのプログラム ファイル
発行日;2012/01/11 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 539KB) | フィードバック

目次

ACNS ソフトウェアのプログラム ファイル

プログラム ファイル DTD

プログラム ファイルの例

WMT マルチキャスト ライブ イベント

WMT マルチキャスト再ブロードキャスト イベント

Cisco Streaming Engine マルチキャスト イベント

Cisco Streaming Engine ライブ分割イベント

ACNS ソフトウェアのプログラム ファイル

ACNS 5.5 ソフトウェアのプログラムにより、マルチキャスト ライブ イベントおよびスケジュールされたイベントの再ブロードキャストがサポートされます。ACNS ソフトウェアのプログラムは、コンテンツをエンド ユーザに表示するスケジュール化されたイベントとして定義されています。プログラムには次の 3 つの属性があります。

スケジュール -- コンテンツをエンド ユーザに提示するスケジュールを定義します。

コンテンツ -- エンド ユーザに提示するコンテンツを定義します。ACNS ソフトウェアでは、事前配信のコンテンツまたはライブ コンテンツのいずれにも対応しています。

プレゼンテーション -- コンテンツをエンド ユーザに提示する方法を定義します。プレゼンテーション属性には、プログラムの詳細情報を持つ Content Engine セットと、コンテンツ配信に使用されるストリーミング サーバを識別するサービス タイプが含まれます。ストリーミング サーバは、Content Engine(Windows Media Technologies [WMT]、RealServer、または Cisco Streaming Engine)内に置くことも、外部(セット トップ ボックス内など)に置くこともできます。

プログラム ファイルには、スケジュール、コンテンツ、およびプレゼンテーション パラメータを定義する要素が含まれています。これは、マニフェスト ファイルと同様に、XML 形式で書かれたテキスト ファイルです。マニフェスト ファイルの詳細については、『 Cisco ACNS Software Configuration Guide for Centrally Managed Deployments 』Release 5.5を参照してください。

プログラム タイプは、ユーザへのコンテンツ配信に関わるハードウェアまたはソフトウェア コンポーネントを識別します。プログラム タイプには、次の種類があります。

Cisco Streaming Engine

WMT

RealMedia

TV-Out

エクスポート(セット トップ ボックスなど、サードパーティ製のデバイス用)

Content Distribution Manager は、プログラムで使用されるマルチキャスト アドレスを管理します。プログラムに割り当てられた各 Content Engine は、マルチキャスト アドレスを使用してブロードキャストします。Content Engine は、プログラム データに基づいて、使用するマルチキャスト アドレスを決定します。マルチキャストのアドレス セットは、プログラム API で指定することも、Content Distribution Manager を使用して指定することもできます。Content Distribution Manager は、プログラムでマルチキャスト アドレスが必要になるたびに、アドレスの 1 つをプログラムに関連付けます。アドレスは、プログラムの存続中はそのまま割り当てられます。アドレスを自動削除するようにプログラムを設定することもできます。その場合、プログラムのスケジュールが完了してから約 24 時間後に、プログラムのアドレスは自動的に解放されます。

ユーザがプログラム用のアドレス プールを設定する場合、ACNS ソフトウェアは、いずれのプール アドレスもマルチキャスト クラウドによって使用中でないことを確認します。ユーザがプログラムに使用される特定のアドレスまたはアドレス セットを要求すると、ACNS ソフトウェアは、マルチキャスト クラウド用に設定されてなく、既存のプログラムによって使用されていないアドレスのみを提供します。インポートされたプログラム ファイルにマルチキャスト アドレスが関連付けられていなくて、設定するアドレスがプールから入手できない場合、またはマルチキャスト プールが設定されていない場合、ユーザはエラー メッセージを受信します。

createProgram API を使用して Cisco Streaming Engine ライブ プログラムを定義する場合、単一のバックアップ ブロードキャスト サーバをこのプログラム用に指定できます。そのためには、プログラム ファイル内で、<media> タグを使用して、プライマリ ブロードキャスト サーバとバックアップ ブロードキャスト サーバの IP アドレスを指定する必要があります。プログラム ファイル内の <media> タグの書式は、次のとおりです。

<media index=" number " src=" primary_broadcast_server : port ; backup_broadcast_server : port "/>

プログラム ファイル DTD

ここでは、ACNS ソフトウェア プログラム ファイルの DTD について説明します。DTD を使用して、サードパーティ製のシステムまたは IP/TV からプログラムをインポートしたり、STB(セット トップ ボックス)にプログラムをエクスポートしたりするためのプログラム ファイルを作成できます。

次に、ACNS ソフトウェア プログラム ファイルの DTD の例を示します。

<?xml version="1.0"?>
<!DOCTYPE program[
<!ELEMENT program (media+, ucastInfo?, mcastInfo?, overlay*, schedule*, attribute?)>
<!ATTLIST program
version CDATA "1.0"
name CDATA #REQUIRED
serviceType (tvOut | export | wmt | real | ciscoStreamingEngine) "tvOut"
description CDATA #IMPLIED
playTime CDATA #IMPLIED
lastModificationTime CDATA #IMPLIED
gracefulExit (false | true) "false"
shuffle (false | true) "false"
autoDelete (false | true | default) "default"
live (false | true) "false"
>
<!ELEMENT media EMPTY>
<!ATTLIST media
index CDATA #IMPLIED
src CDATA #REQUIRED
id CDATA #IMPLIED
playTime CDATA #IMPLIED
overlayName IDREF #IMPLIED
>
<!ELEMENT ucastInfo EMPTY>
<!ATTLIST ucastInfo
referenceUrl CDATA #REQUIRED
>
<!ELEMENT mcastInfo (addrPort*)>
<!ATTLIST mcastInfo
referenceUrl CDATA #REQUIRED
TTL CDATA #IMPLIED
>
<!ELEMENT addrPort EMPTY>
<!ATTLIST addrPort
addrVal CDATA #REQUIRED
portVal CDATA #REQUIRED
id CDATA #IMPLIED
>
<!ELEMENT overlay EMPTY>
<!ATTLIST overlay
name ID #REQUIRED
src CDATA #REQUIRED
id CDATA #IMPLIED
placement (center | ll | lr | ul | ur ) "lr"
height CDATA "0"
width CDATA "0"
opacity CDATA "7"
colorTransparency (false | true) "false"
>
 
<!ELEMENT schedule (repeats?)>
<!ATTLIST schedule
timeSpec (local | gmt) "local"
startTime CDATA #IMPLIED
activeDuration CDATA #IMPLIED
>
<!ELEMENT repeats (dayOffset*)>
<!ATTLIST repeats
type (timeInterval | days) "timeInterval"
interval CDATA #IMPLIED
endTime CDATA #IMPLIED
>
<!ELEMENT dayOffset EMPTY>
<!ATTLIST dayOffset
value (0 | 1 | 2 | 3 | 4 | 5 | 6) "0"
>
<!ELEMENT attribute EMPTY>
<!ATTLIST attribute
value CDATA #REQUIRED
>
]>
 

表A-1 では、DTD 内の要素とその属性について説明します。

 

表A-1 プログラム ファイルの DTD 要素と属性

要素
属性
説明

Program

Version

プログラム ファイルのバージョン。ACNS ソフトウェア リリース 5.5 では、バージョン レベル 1 の再生リスト ファイルが生成されます。

name

プログラム名

serviceType

配信モードを示すプログラムのタイプ。この要素は、ユーザへのコンテンツ配信に関わるハードウェアまたはソフトウェア コンポーネントを識別します。

description

プログラムの簡単な説明

playTime

合計再生時間(秒単位)。これは、メディア ファイルの再生時間値の合計です(設定されている場合)。プログラム内に再生時間が無効なファイルが存在する場合、このフィールドは -1 に設定されます。

lastModificationTime

再生リストが最後に作成または変更された時刻。Content Distribution Manager によって記録されたのと同じ時刻。形式は、hh:mm:ss です。ACNS ネットワーク内のすべてのデバイスが時間同期されていること(たとえば、Network Time Protocol [NTP] を使用している場合)を前提にしています。

gracefulExit

スケジュールされている終了の処理方法を指定します。オプションは、次のとおりです。

True -- 現在のメディア ファイルが完全に再生されたあとで終了します。

False -- 直ちに終了します。

shuffle

メディア ファイルをランダムに再生するかどうかを指定します。オプションは、次のとおりです。

True -- メディア ファイルをランダムに再生します。

False -- メディア ファイルを順番に再生します。

この属性が指定されていない場合、デフォルトで false に設定されます。

autoDelete

プログラムを、最後に再生してから 24 時間後に自動的に削除するかどうかを指定します。オプションは、次のとおりです。

True -- 最後に再生されてから 24 時間後にプログラムを削除します。

False -- 最後に再生されてから 24 時間以上経過してもプログラムは保持されます。

デフォルト -- live 属性の値が true に設定されている場合、 autoDelete のデフォルト値は true になり、live 属性が false に設定されている場合は false になります。

live

プログラムにライブ コンテンツを含めるかどうかを指定します。オプションは、次のとおりです。

True -- プログラムはライブ コンテンツを含みます。

False -- プログラムはライブ コンテンツを含みません。

media

index

ファイル リスト内のメディア ファイルの順序、すなわち 1 から mediaCount(プログラム内のメディア ファイル数)まで。<media> タグ内の shuffle 属性が false に設定されている場合、メディア ファイルの順序はindex 属性によって指定されます。

src

メディア ファイル ソースの参照先

ライブ コンテンツの場合、このフィールドにはストリーミング サーバとライブ フィードの相互関連についての情報が含まれます。

事前配信コンテンツの場合、このフィールドには、オリジン サーバのあとに続く URL の部分、つまり、完全修飾ドメイン名(FQDN)が含まれます。

たとえば、ソース ファイルの URL が http://myWebSite/myDirectory/myFile の場合、このフィールドに割り当てられる値は、myDirectory/myFile になります。


) 事前配信コンテンツがエクスポートされる場合、このフィールドには、プロトコルを指定しなくても ACNS ネットワーク内をルーティングできるファイルの URL が含まれます。


ライブ ソースのフェールオーバーがサポートされます。

WMT ライブでは、複数のエンコーダまたはストリーミング サーバを指定できます。

src="http://encoder_1:8080";"rtsp://source_hostIP/fileName"

CSE ライブでは、1 つのバックアップのみを指定できます。

src="sourceAddress1:destinationPort1;sourceAddress2:destinationPort2"

id

メディア ファイル ID。再ブロードキャスト イベントの場合、このフィールドには、そのメディア ファイルを含んだチャネルの ID が含まれます。ライブ イベントの場合、このフィールドは、ストリーム ソースとマルチキャスト アドレスの関連を示すために使用されます。

playTime

秒単位で表されるファイルの再生時間(既知の場合)。この属性が使用されるのは、MPG メディア ファイルに限られます。オプションは、次のとおりです。

-2 -- ファイルが MPG ファイルではない場合

-1 -- ファイルが MPG ファイルであっても、ACNS ソフトウェアが再生時間を算定できない場合

0 以上 -- 再生時間がファイルから正しく算定されている場合

overlayName

このメディア クリップと共に表示されるオーバーレイの名前。このフィールドは任意です。

ucastInfo

referenceUrl

ネットワーク上でこのプログラムを要求するためにエンド ユーザが使用する URL

mcastInfo

referenceUrl

ネットワーク上でこのプログラムを要求するためにエンド ユーザが使用する URL

TTL

マルチキャストを使用して送信されるパケットに対して使用される、マルチキャスト存続可能時間(TTL)値

addrPort

addrval

このプログラムをマルチキャストするときに使用されるアドレス

portVal

このプログラムをマルチキャストするときに使用されるマルチキャスト アドレス内のポート

overlay

name

識別のためにユーザが定義する一意の名前。名前は文字で始まる、有効な XML 名であることが必要です。

src

指定のオーバーレイ ファイルのソース。インポートされたプログラムの場合、src 属性には、オリジン サーバのあとに続く URL の部分、つまり、FQDN が含まれます。

たとえば、ソース ファイルの URL が http://myWebSite/myDirectory/myFile の場合、このフィールドに割り当てられる値は、myDirectory/myFile になります。


) 事前配信コンテンツがエクスポートされる場合、このフィールドには、プロトコルを指定しなくても ACNS ネットワーク内をルーティングできるファイルの URL が含まれます。


id

オーバーレイ ファイルで使用される ID。このフィールドが使用されるのはプログラムがインポートされる場合に限られ、このメディア ファイルを含んだチャネルの ID が含まれます。

placement

メディア ファイル内のオーバーレイの配置。このフィールドは任意です。オプションは、次のとおりです。

Center(中央)

Lower left(左下)

Lower right(右下)

Upper left(左上)

Upper right(右上)

デフォルト値は Lower right(右下)です。

height

オーバーレイの垂直配置(-40 ~ 40 ピクセル)

-40 -- ディスプレイで表示可能な最下部にイメージを移動します。

40 -- ディスプレイの最上部にイメージを移動します。

width

オーバーレイの水平配置(-6 ~ 60 ピクセル)

-60 -- ディスプレイ上で表示可能な最左の位置にイメージを移動します。

60 -- ディスプレイ上で表示可能な最右の位置にイメージを移動します。

opacity

オーバーレイの不透明度(0 ~ 15)。0 の値では、オーバーレイは完全に不透明になります。15 の値では、透明に近いイメージが得られます。

colorTransparency

オーバーレイに透明色を定義するかどうかを指定します。設定されている場合、左下隅のピクセルの色はイメージ全体で透明になります。透明なイメージを使用する場合、オーバーレイの背景色は、その背後で再生されているビデオによって見えなくなります。デフォルト値は false です。

schedule

timeSpec

時刻値の解釈方法を指定します。オプションは、次のとおりです。

Local(現地時間)

Greenwich Mean Time(GMT; グリニッジ標準時)

startTime

プログラムが再生を開始する、エポック(1970 年 1 月 1 日)からの時間(秒単位)


ヒント UNIX オペレーティング システムでは、エポックは 1970 年 1 月 1 日、00:00:00 GMT です。これは、UNIX オペレーティング システムの日付と時刻のスタンプの 0 に対応する時刻と日付を表します。システムの時刻は、エポックから秒単位で計測されます。

activeDuration

プログラムの期間(秒単位)。スケジュールされた再ブロードキャストの場合、この値は、ファイルがループする時間の長さ(つまり、X 秒間のループ)を指定します。ループしない場合の値は 0 です。ライブ プログラムの場合、この値はイベントの期間を示します。

repeats

type

反復のタイプ。たとえば、プログラムを X 秒ごとに反復するか、あるいは指定の曜日に、指定開始時刻と同じ時刻に反復するように設定できます。オプションは、次のとおりです。

TimeInterval(時間間隔)

Days(曜日)

interval

プログラムの反復ブロードキャストの時間間隔(秒単位)

たとえば、この値を 28,800 秒に設定した場合、プログラムは 8 時間ごとに反復されます。

endTime

プログラムの反復を終了する、エポック(1970 年 1 月 1 日)からの時間(秒単位)。永続的に反復されるプログラムの場合、この値は 0 です。

dayOffset

value

プログラムを反復する曜日(毎週月曜日など)。反復する時刻(日中)は、startTime 属性から継承されます。

attribute

value

サードパーティ製のデバイス(セット トップ ボックスなど)が透過的なデータを ACNS ネットワークにインポートする場合に使用され、ユーザへのコンテンツ配信に関わるソフトウェアやハードウェアによって直接使用される要素です。Centralized Management System(CMS; 中央管理システム)は、データを解釈せずにリレーします。このフィールドで推奨されるエンコード方式は、ストリング内で名前/値のペアを使用する方式です(name1=value1; name2=value2 など)。

プログラム ファイルの例

ここでは、プログラム ファイルの例を示します。それぞれの例は、特定のイベント タイプのコンテンツを記述しています。以下のイベント タイプに関する例を示します。

「WMT マルチキャスト ライブ イベント」

「WMT マルチキャスト再ブロードキャスト イベント」

「Cisco Streaming Engine マルチキャスト イベント」

「Cisco Streaming Engine ライブ分割イベント」

WMT マルチキャスト ライブ イベント

次に、Content Distribution Manager によってマルチキャスト アドレスが選択されている、WMT マルチキャスト ライブ イベント用のプログラム ファイルの例を示します。この例では、 addrPort 属性は示されていません。

<?xml version="1.0" ?>
<!DOCTYPE program SYSTEM "program.dtd">
<program version="1.0" name="prog1" serviceType="wmt" live="true">
<media src="http://wmt_encoder:8080" />
<mcastInfo referenceUrl="http://rootCE/prog1.nsc"/>
<schedule timeSpec="gmt" startTime="1010170800" activeDuration="3600"/>
</program>
 

次に、addrPort 属性を使用してマルチキャスト アドレスが指定されている、WMT マルチキャスト ライブ イベント用のプログラム ファイルの例を示します。

<?xml version="1.0"?>
<!DOCTYPE program SYSTEM "program.dtd">
<program version="1.0" name="liveProgram" serviceType="wmt" description="test" autoDelete="true" live="true">
<media index="1" src="http://WMT_encoder:8080" id="media0"/>
<mcastInfo referenceUrl="http://rootCE/liveProgram.nsc" TTL="22">
<addrPort addrVal="239.232.25.95" portVal="61248" id="media0"/>
</mcastInfo>
<schedule timeSpec="gmt" startTime="0" activeDuration="0"/>
</program>
 

WMT マルチキャスト再ブロードキャスト イベント

次に、WMT マルチキャスト再ブロードキャスト イベント用のプログラム ファイルの例を示します。

<?xml version="1.0"?>
<!DOCTYPE program SYSTEM "program.dtd">
<program version="1.0" name="chanrebroad" serviceType="wmt" description="test" autoDelete="false" live="false">
<media index="1" src="sen/beck.asf" id="Channel_35748"/>
<media index="2" src="sen/CSCin53585.wmv" id="Channel_35748"/>
<media index="3" src="sen/starsnstripes.asf" id="Channel_35749"/>
<mcastInfo referenceUrl="http://root_CE/chanrebroad.nsc">
<addrPort addrVal="239.232.25.195" portVal="61248" id="Channel_35748"/>
</mcastInfo>
<schedule timeSpec="local" startTime="1010170800" activeDuration="1300">
<repeats type="timeInterval" interval="2600"/>
</schedule>
</program>
 

referenceUrl 属性は、ユーザがプログラムに参加するためにクリックするリンクです。referenceUrl 属性内のルート Content Engine(http://ContentEngine/prog1.nscなど)の外部 IP アドレスを指定できます。


) メディア ファイルは、<protocol>://<FQDN>/<relative_URL> 形式の URL を使用して、一意的に識別できます。media 要素内の id 属性は、メディア ファイルを含んだチャネルの ID を指定します。各チャネルは、Content Engine の FQDN またはオリジン サーバの FQDN に関連付けられています。media 要素内の src 属性は、URL の相対部分を指定し、これと id 属性を合わせて、ファイルを識別します。


Content Router を使用してユーザの要求を適切な Content Engine に送る場合は、メディア ファイルをホストする Content Engine の FQDN を指定できます。この場合、FQDN は、プログラムを提供できる同じ Content Engine にマップされる Web サイトまたはチャネルに関連付けられることが必要です。

あらかじめ選択した Content Engine にユーザの要求を送る場合は、その Content Engine の名前を指定できます。サードパーティ製のデバイス(セット トップ ボックスなど)が Content Engine をプログラムに直接割り当てる場合、referenceUrl 属性には、プログラムに割り当てられているどの Content Engine でも 1 つ指定できます。サードパーティ製のデバイスがチャネルをプログラムに割り当てる場合、referenceUrl 属性には、そのチャネル内のどの Content Engine の名前(ルート Content Engine など)でも指定できます。

Cisco Streaming Engine マルチキャスト イベント

次に、Cisco Streaming Engine マルチキャスト イベント用のプログラム ファイルの例を示します。このイベントは、ucastInfo 要素内の referenceUrl 属性を指定することで、ユニキャストを使用してアクセスすることもできます。

<?xml version="1.0" ?>
<!DOCTYPE program SYSTEM "program.dtd">
<program version="1.0" name="prog5lfs_1673" serviceType="ciscoStreamingEngine" description="prog5lfs" playTime="3600" autoDelete="false" live="true">
<media index="0" src="source_ip_address:destination_port" id="media0"/>
<media index="1" src="source_ip_address:destination_port" id="media1"/>
<ucastInfo referenceUrl="rtsp://PM_FQDN_or_IP_addr/PM_1673.sdp"/>
<mcastInfo referenceUrl="http://PM_FQDN_or_IP_addr/programs/1673" TTL="15">
<addrPort addrVal="224.2.250.195" portVal="61036" id="media0"/>
<addrPort addrVal="224.2.250.196" portVal="61038" id="media1"/>
</mcastInfo>
<schedule timeSpec="gmt" startTime="3264429600" type="playOnce"/>
<attribute value="unicastPushSDP:http://2.43.12.6/programs/1673"/>
</program>
 

) メディア ソース(src)は、Cisco IP/TV Broadcast Server サーバからプッシュされる、ライブ フィードです。src 属性には、IP/TV ブロードキャスト サーバの IP アドレスとルート Content Engine の宛先ポートが含まれます。ルート Content Engine は、指定の宛先ポート上のプログラム ストリームを待ち受けます。オーディオ、ビデオ、その他のフィードは、それぞれ別のマルチキャスト アドレスを使用して別のストリーム上でブロードキャストされることがあるので、複数のメディア ソースが存在します。media 要素内の id 属性と addrPort 要素内の id 属性を使用して、アドレスとストリームを相互に関連付けます。


Cisco Streaming Engine ライブ分割イベント

次に、Cisco Streaming Engine ライブ分割イベント用のプログラム ファイルの例を示します。

<?xml version="1.0" ?>
<!DOCTYPE program SYSTEM "program.dtd">
<program version="1.0" name="prog5lfs_1674" serviceType="ciscoStreamingEngine" description="prog52fs" playTime="3600" autoDelete="false" live="true">
<media index="0" src="source_ip_address:destination_port" />
<media index="1" src="source_ip_address:destination_port" />
<ucastInfo referenceUrl="rtsp://PM_FQDN_or_IP_addr/PM_1674.sdp"/>
<schedule timeSpec="gmt" startTime="3264429600" activeDuration="7200" type="playOnce"/>
<attribute value="unicastPushSDP:http://2.43.12.6/programs/1673"/>
</program>
 

) Cisco Streaming Engine ストリーミング サーバの場合、schedule 要素の属性を指定する必要があります。プログラム ストリームには別のマルチキャスト アドレスが存在しないので、id 属性は必要ありません。