misc.log

日常茶飯事とお仕事と

ストリーミング/オンデマンド配信

仕事で録画した画像を社内に流すか?という話が。

いわゆるストリーミングとかオンデマンドとか言われる配信ですね。で、調べてみました。最初に浮かんだ疑問は「単にファイルサーバーに動画ファイルを置いておくだけじゃだめなの?」という点。

ストリーミング

本来は、動画ソースをそのままネットワークに流せる仕組みのことのようで。たとえばカメラで撮影しているはしからエンコードし、それをネットワークからの要求に応じて流すというもの。

オンデマンド配信

ストリーミングがリアルタイムなエンコードを要求するのに対し、こちらはすでに出来ているコンテンツを要請に応じて流すというもの。


どちらかというとオンデマンドだな。やりたいのは。で、そうするとやはり「ファイル共有とは違うの?」という感じになってしまう。ストリーミングサービスを行うには、何かしらそうしたサーバー製品が必要なようだが、それらはたいていエンタープライズ用途では有償。帯域の制御やアクセス数の制限なども行ってくれるらしいが、1つ大きなメリットとして「視聴側にオリジナルデータを残さない」というのが挙げられるようだ。

例えば社内の技術的な手順を納めたビデオを、支社を含めて閲覧可能にする場合など、ファイルで広めてしまうと流出などの恐れがあるが、ストリーミングを然るべき設定で行えばその恐れが若干低減されるということか(全く不可能ではないが、それはどのような手段をとっても同じ)。

配信の仕組みをどうする?

できれば無償で、慣れたインターフェイスにしたいところ。個人的にはlinuxとかでもいいんじゃないかと思うけれど、現状、社内に非Windows環境のサーバーを立てることについておそらく事例が少なく、くだらない議論になりそうなので無難に済ませたい。


というわけで、この辺を調べてみることにする。

Windows Media Services 9 Series
http://www.microsoft.com/japan/windows/windowsmedia/distribute.aspx

これと同じかどうかはまだちょっとよく分からないけれど、Windows Server 2003のインストール後、デスクトップに表示される「サーバーの役割管理」というメニューから、「役割を追加または削除する」を選択、表示される一覧から「ストリーミング メディア サーバー」を選択すると入るような気が。

やってみたところ、途中にWindows Server 2003のメディアを要求され、そのi386フォルダを指定してOKを押すとしばらくして導入自体は完了したようだ。


その後、同じく「サーバーの役割管理」画面上に表示される「このストリーミング メディア サーバーを管理する」というリンクを押すと、下図のような画面が表示される。

画面左側にサーバーを起点にしたツリー表示があり、その中の「公開ポイント」というところを選ぶと、右側に詳細が表示される。「ソース」というタブがあるので、そこを見ると公開に利用するフォルダなどが設定できるようだ。とりあえず既定のまま、適当な動画ファイルを置いてみることにしよう。

動画ファイルを、既定の公開用フォルダである「c:\wmpub\WMRoot」にコピーする。とりあえず、MP4とWMVと両方置いてみたが、MP4は認識してくれないようだ。当然?。というわけでWMV形式のファイルを公開する手順を試してみることに。

  1. 公開ポイントの「アナウンス」タブを選択する。
  2. 「ユニキャストストリームへの接続」という欄の「ユニキャスト アナウンスメント ウィザード」と書かれたボタンを押す。
  3. 表示されるダイアログで、「アナウンスメントに含めるコンテンツを指定します」というところの「ディレクトリ無いの1つのファイル」というところにある「参照」ボタンで、実際に公開したいファイルを指定する。
  4. 公開に用いるサーバー名を指定する。既定状態では、「mms://(サーバー名)/(ファイル名)」という形式が表示されているので、必要であれば「変更」ボタンを押して変更する。
  5. 「アナウンスメントオプションの保存」ダイアログで、アナウンスメントファイル(拡張子asx)の名前や、リンクを埋め込んだHTMLファイルを作成するための情報を入力する。デフォルトではasxファイル作成だけになっているので、ここでは「埋め込みのプレイヤーおよびコンテンツへのリンクを持つWebページを作成する」のチェックをONにし、適当なHTMLファイル名を入力する。
  6. アナウンスメントメタデータの編集画面になるので、ここでタイトルや作者、著作権情報を記入する。特に空欄でも先に進むことは可能。
  7. これで完了。

上記の手順で進めると、何かしらの名前を付けたHTMLファイルができあがる。ここまではサーバー上でやっているので、このHTMLファイルを視聴者に相当するPC(同じLAN上にある)にコピーし、開いてみると....動画が表示された。

で、asxと言う拡張子のファイルについては、HTMLファイル上からの閲覧には特に不要なようだが、これを作成しないとここまでの手順を進めることはできないようなので、とりあえず作るだけ作っておくことにする。


と言う手順で、無設定状態でも「LAN上の公開用サーバーから動画を配信する仕組み」については作ることができた。あとは細かい設定などについて調べて調整するだけ。

Chromeでの表示再生

作成したHTMLファイルをGoogle Chromeで表示させてみたところ、Javaプラグインの更新が必要という表示が出た。

Java for Chrome
http://java.com/en/download/chrome.jsp?locale=en&host=java.com:80

ここでダウンロードが必要らしい。