• 追加された行はこの色です。
  • 削除された行はこの色です。
PeerCastによる動画配信は、通常「Yellow Page」(以下YP)を経由して視聴者に配信情報が公開されるといった形態を取っている。~
2009年9月に最も多くの配信者に利用されていたYPが停止して以降、新興YPが多数立ち上がっている状況になっている。ここでは筆者自身のYP立ち上げの経験を元に、設置を行う一連の流れを書いてみた。説明が不十分なところは多々あると思われるが、YPに興味がある人には参考になるだろう。~
[[TURF PAGES:http://takami98.ddo.jp/yp/index.php]]
2009年9月に最も多くの配信者に利用されていたYPが停止して以降、新興YPが多数立ち上がっている状況にある。ここでは筆者自身のYP立ち上げの経験を元に、設置を行う一連の流れを書いてみた。説明に不十分なところが多々あると思われるが、YPに興味がある人には参考になるだろう。~
[[TURF PAGES:http://takami98.ddo.jp/yp/index.php]](既に閉鎖)
* YP4G PeerCast Yellow Pagesを設置する [#y9c0d9a8]
http://mosax.sakura.ne.jp/fswiki.cgi?page=YP4G~
YP4GとはYPを容易に設置可能な主にPHPによって実装されたスクリプトである。配信情報はすべてSQLiteに格納される形になっている。~
YP4GとはYPを容易に設置可能な、PHPによって実装されたスクリプトである。配信情報はすべてSQLiteに格納される形になっている。~

** PeerCastとYP4Gの動作の流れ [#c64067e8]
+ 配信者がYPサーバに配信情報を送信する。
+ rootモードで立ち上げたPeercastが配信情報を受け取り、viewxml([[http://localhost:ポート番号/admin?cmd=viewxml:http://takami98.ddo.jp/image/viewxml.png]])に反映する。
+ rootモードで立ち上げたPeercastが配信情報を受け取り、viewxml([[http://localhost:ポート番号/admin?cmd=viewxml:http://takami98.sakura.ne.jp/memocho/index.php?plugin=attach&pcmd=open&file=viewxml.png&refer=YP%C0%DF%C3%D6%A4%CB%A4%C4%A4%A4%A4%C6]])に反映する。
+ reload.phpがviewxmlを定期的に読みに行き、xmlソースを解析して配信情報をDBに格納。
+ DBからデータを取得してチャンネル一覧を表示(index.php)。
+ PCMP等の配信情報を取得するツールはindex.txt(中身はPHPソースで、DBからデータを取得するように記述)から配信情報を取得する。

** サーバの設置について(XAMPPの紹介) [#l41ee8d6]
YP4Gを設置するにはPHPが動作するWEBサーバが必要である。最も容易に(windowsPCを使う場合)この環境を得るにはXAMPPをインストールすることである。ただこのツールはシステム開発時に使用するのが一般的で、セキュリティ的に強くはない。もしXAMPPを使用して本格的に運用するのであれば、XAMPPによるWEBサーバ導入について書かれた参考書を購入して基本的な設定をもれなく実施し、その上でネット等からセキュリティに関する情報をしっかり得ることを強く推奨する。~
http://www.apachefriends.org/jp/xampp-windows.html

** PeerCastの設定について [#e04324bb]
配信の視聴同様に、YPにおいてもPeerCastを使用する。PeerCastとYP4Gの連携については上記の通りである。~
PeerCastの設定については以下のようにした。(これが正しい設定かどうかはちょっと自信ないので参考程度に…)~
[[画面ハードコピー:http://takami98.ddo.jp/image/peercast_root.png]]
[[画面ハードコピー:http://takami98.sakura.ne.jp/memocho/index.php?plugin=attach&pcmd=open&file=peercast_root.png&refer=YP%C0%DF%C3%D6%A4%CB%A4%C4%A4%A4%A4%C6]]

** YP4Gを設置する [#g9965cd6]
YPファイルを落としたら、それをサーバのルートディレクトリ配下に置く。私はディレクトリ構造を以下のようにした。この構造に合わせて設定ファイルを設定する。ちなみにWindowsサーバを使用しているためパーミッションの設定は行っていない。~
[[画面ハードコピー:http://takami98.ddo.jp/image/ftp.png]]~
ファイルを落としたら、それをサーバのルートディレクトリ配下に置く。私はディレクトリ構造を以下のようにした。この構造に合わせて設定ファイルを変更する。ちなみにWindowsサーバを使用しているためパーミッションの設定は行っていない。~
[[画面ハードコピー:http://takami98.sakura.ne.jp/memocho/index.php?plugin=attach&pcmd=open&file=ftp.png&refer=YP%C0%DF%C3%D6%A4%CB%A4%C4%A4%A4%A4%C6]]~
後はreadme.txtをくまなく確認し、一つ一つ確実に設定する。ディレクトリ構造・サーバのローカル・グローバルのIPアドレスおよび使用するポートを事前に確認してから設置するとよいだろう。~
最後にreload.phpを定期的に実行する仕組みを作る。GUIツールで手軽にジョブを作成できるCRONを使う方法が一般的だと思われるが、Windowsサーバで運用するなら、OS標準機能のタスクスケジューラを使うこともできる。その場合バッチファイルを作成し、スケジューラからバッチファイルを動かすようにする。メモ帳を使って以下のように記述し、拡張子を「.bat」として保存する。(一行目は私のディレクトリの場合、2行目はphp.exeを環境変数に登録している場合の記述であることに注意)
> cd C:\xampp\htdocs\yp\reload
> php reload.php
最後にreload.phpを定期的に実行する仕組みを作る。Linuxの場合、cronを使う方法が一般的だが、Windowsサーバで運用するなら、OS標準機能のタスクスケジューラを使う([[Windows版cronも存在する:http://www.kalab.com/freeware/cron/cron.htm]])。その場合バッチファイルを作成し、スケジューラからバッチファイルを動かすようにする。メモ帳を使って以下のように記述し、拡張子を「.bat」として保存する。(一行目は私のディレクトリの場合、2行目はphp.exeを環境変数に登録している場合の記述であることに注意)
>cd C:\xampp\htdocs\yp\reload
>php reload.php
<
出来上がったファイルをダブルクリックして正常に終了すれば作成完了である。
出来上がったファイルをダブルクリックして正常に終了すれば完成である。後はタスクを作成して定期的に実行できるようにするだけ。~
この方法では処理が実行されるたびにDOSが立ち上がることになる。気になる場合はvbsをかませると良い。[[参考:http://okwave.jp/qa1242774.html]]

** その他の設定 [#gf45a0eb]
WEBサーバおよびPeerCastに外部からアクセスできるようにするにはルータのポート開放(アドレス変換)の設定やセキリティツールの例外設定が必要である。設定の際に詰まる原因は大体この辺りにあることが多い。(PeerCastユーザであればある程度心得ている人ばかりであると思われるが)~
それから外部からアクセスする際に、ドメインを取得する。プロバイダとIP固定サービスを契約していない限り、グローバルIPは基本的に一定時間しか維持できないためだ。無料で手軽に利用できるサブドメインを取得するのがお勧め。私は[[Dynamic DO!:http://ddo.jp/]]でサブドメインを取得している。~
ドメインの取得と合わせて導入すべきなのが定期的に自動でグローバルIPとサブドメインの紐付けを行うツールの導入である。理由は上記の通りだ。[[DiSE:http://www.hi-ho.ne.jp/yoshihiro_e/dice/]]という有名なツールがあり、これを導入することを推奨する。
それから常時外部からアクセスできるようにするため、ドメインを取得する。プロバイダとIP固定サービスを契約していない限り、グローバルIPは基本的に一定時間しか維持できないためだ。無料で手軽に利用できるサブドメインを取得するのがお勧め。私は[[Dynamic DO!:http://ddo.jp/]]でサブドメインを取得している。~
ドメインの取得と合わせて導入すべきなのが定期的に自動でグローバルIPとドメインの紐付けを行うツールの導入である。理由は上記の通りだ。[[DiSE:http://www.hi-ho.ne.jp/yoshihiro_e/dice/]]という有名なツールがあり、これを導入することを推奨する。

** 動作確認 [#qf0311dc]
一通り設置作業が終われば、いよいよYPの動作確認である。まずはローカルのPCからYPに接続する。事前にC:\WINDOWS\system32\drivers\etc\hostsに取得したドメインとサーバのローカルIPを紐付ける設定を追加しておくとドメインからローカルサーバが見れて便利である。[[参考:http://www.speever.net/vzmanual/hpcheck/hosts.html]]~
次に外部からも掲載および配信の受信・リレーができることを確認できればとりあえずの設置は完了である。

**その他 [#h1141dd0]
チューニング等についてはWindowsXP上でapacheを動かす際のノウハウ集にまとめている。

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS