
 |
|

|
 |
FCS配信環境の構築
 |
| |
FCSによるライブ配信は、初の試みである上、準備にあまり時間が割けそうになかったので、あまり凝ったことをせず、シンプルに配信することにしました。しかし、そんなにすんなり事は進まないわけで…。
◆エンコーダ画面が中央部分しか表示されない?
第9回で紹介したライブエンコーダをベースに、画面サイズを320×240(pix)、ビットレートを300kbpsに作り変えていざ動かしてみたところ、画面の中央部分だけ切り取った形で表示されてしまうという現象が発生。どうやら、「active_cam_setMode()」でキャプチャーサイズを指定しなければいけないようです。デフォルトは、160×120であるため、このサイズでエンコードしている分には気づかなかったのです。エンコーダを作成する際は、次のような構文で、キャプチャーサイズを指定します(メーカーからライブエンコーダを提供して欲しいところですが)。
| active_cam.setMode(width, height, fps [,favorSize]) |
パラメータは、次のとおりです。
| active_cam |
カメラオブジェクト名を指定します。 |
| width |
キャプチャの幅をピクセルで指定します。
(例:320) |
| height |
キャプチャの高さをピクセルで指定します。
(例:240) |
| fps |
1秒あたりのフレーム数を指定します。 |
| favorSize |
指定要件に合うネイティブモードがカメラにない場合に、幅、高さ、フレームレートをどのように操作するかを示します。デフォルト値は
trueで、キャプチャーサイズを優先します。このパラメータを使うと、width値とheight値にもっとも近いモードが選択されます。キャプチャーサイズよりもフレームレートを優先するには、favorSizeパラメータにfalseを指定します。
なお、このパラメータはオプションです。 |
◆Proxy経由のクライアントは、ストリーミング再生までに1分以上かかる?
プレイヤーの立ち上がりが速いのがFlash Playerのウリですが、Proxy経由でFlash Videoを再生しようとすると、再生開始までに1分以上かかってしまう事象が発生しました。いろいろ調べた末、原因がわかりました。FCSは、デフォルトで「rtmp(1935)」を使用しますが、ファイアウォールなどが原因でrtmpの通信ができないケースのために、「https(443)」、「http(80)」、「Proxy」で通信できるようになっています。フェイルオーバーの順番は、
rtmp(1935) → https(443) → http(80) → proxy
です。FCSがhttpsをlistenする設定にしていなかったので、httpsをlistenするようにしたところ、再生までの時間が短縮されました。ちなみに、このフェイルオーバーの順番は、変更することができます。詳しくは、こちらを参照ください。
◆サーバ側でコンテンツをアーカイブ
ライブ配信したFlash Video(.flv)をオンデマンドでも配信できるように、サーバ側でアーカイブを取りました。設定方法は、エンコーダアプリケーションのNetStreamオブジェクトのpublishメソッドを次のように記述するだけです。
| ns.publish("ストリーム名", "append"); |
この設定が実行されると、アプリケーションディレクトリ配下に「streams/_definst_」が自動的に作成され、ここにストリーム名のflvファイルとインデックス用のidxファイルが蓄積されます。なお、パラメータには、「append」(追記)と「record」(上書き)、「live」(配信のみ)があります。
◆サーバ、エンコーダのスペック
マクロメディアのサイトに掲載されている必要なシステム条件と比べると、ややオーバースペック気味ではありますが、参考までにサーバ、エンコーダに使用したマシンのスペックを紹介します。
| サーバ(FCS) |
| CPU |
Xeon 2.8GHz Dual |
| メモリ |
1GB |
| HDD |
120GB |
| NIC |
GbE(1Gbps) |
| OS |
Red Hat Enterprise Linux 3.0 |
| ライセンス |
Professional Editionライセンスに90日間無制限ライセンスを追加(マクロメディア提供) |
| ネットワーク |
100MbpsのSWに収容 |
| エンコーダ |
| CPU |
Pentium III 850MHz Dual |
| メモリ |
1GB |
| HDD |
40GB |
| NIC |
FE(100Mbps) |
| OS |
Windows 2000 Professional SP4 |
| ビデオキャプチャーカード |
Osprey220 |
| ソフトウェア |
ライブエンコーダは提供されていないため、Flash + Action Scriptで作成 |
|



|
 |















|