Mar 19, 2006

Mac OS Xでストリーミングサーバーを作ろう-動画配信編-

Panther tiger

 今やってるこのプレゼン、支社の連中に生中継できたらなぁ、とか、サークル仲間にこの間の試合でとったビデオ、見られるようにしてみたいなぁ、なんておもうこともある訳です。

 Mac OS X(PantherやTiger)にApple社で配布しているオープンソースウェアの「QuickTime Streaming Server*(Darwin Streaming Server)」をインストールすると、簡単にMac OS X(TigerやPanther)をストリーミングサーバーにすることができます。スペックと回線の太さにもよりますが、ライブ放送や、オーディオ、ビデオ配信サイトなどを実現することができるようになります。最近流行のビデオキャスティングだってできてしまいます。ここではMac OS XにQuickTime Streaming Serverをインストールして、ストリーミングサーバーを作る方法を考えていきます。

 *この機能はMac OS X Server版(Tiger)には標準で組み込まれています。


遠くはなれたところにオーディオやビデオを放送できるようになる


サーバーの設定はブラウザで


 動画や音楽などを単純に配信するということであれば、ストリーミングサーバーをつくらなくても、Sitesフォルダにおいておくだけですみます。これが最も簡単な配信方法なわけでして、http://~でそのファイルまでのURI を指示するだけすみます。

 ストリーミングサーバーを作ると、ライブ中継をしたいとか、複数のムービーを配信したいとか、回線パンクを防ぐために接続数を管理したいとか、そういうときに役立ちます。

 この作業では以下のステップがすんでいることを前提に進めていきますので、取りかかる前に次のステップをすませておくと便利です。




必要なもの

  • Mac(Mac OS Xを搭載しているもの。ここは10.4.x(Tiger)で進みます)
  • QuickTime7以上
  • Apple Developer ConnectionのID
  • ビデオカメラ(iLinkコネクタ、IEEE1394コネクタ、FIrewireがあるもの、USB(不明?)
  • やる気
  • セキュリティーとプライバシー、著作権への配慮
  • インターネットを構築してくれた方々への畏敬の念
  • 高速回線
  • 自己満足



概略

 ここでは、ビデオや音楽などのデータを放送する放送局「QuickTime Streaming Server」をつくります。この放送局に、視聴者に見せたり聞かせたりしたい、データファイルを直接おいて放送します。たくさんの視聴者を扱うにはMacにもそれなりのスペックが必要ですし、かなり太い回線でなければいけません。

 Macは高速なものほどよいそうですが、配信するデータの品質を落とすことで対応できます。アップル社のページによるとG3.G4,G5で動作、メモリは128MB(256MB以上推奨)とありました。G3 300、G4 500、G4 1.4Ghzで試してみましたが、接続者数が多くなければG3 300でも、そこそこストリーミングサーバーとして動いてくれました。




QuickTime Streaming Serverをダウンロードする

  1. アップル社のQuickTimeのページからQuickTime Streaming Serverのページに移動します。


    アップル:Quicktime Streaming Server


  2. 右側にダウンロードというかこみがありますので、その中にある"Darwin Streaming Server"をクリックします。

    一番上Darwin Streaming Serverをクリック


  3. ADCのサイトにあるStreaming Serverのページに移動します。



  4. スクロールしていくとReleaseのところにDarwin Streaming Server 5.5とありますので、これをクリックします。もちろんMac OS X 10.3.9 and laterをダウンロードします。

    Red HatやWindows版も用意されている


  5. クリックするとログインページに移動してしまいます。

    ドラッグアンドドロップするだけでコピーできます。(アクセス権の関係)


  6. Apple IDを持っているなら、入力してSing Inしてください。なければmyinfo.apple.comへすすんで、新しくIDを作ってからにします。

    できたら前のステップに戻ってダウンロードを開始します。


  7. ログインできるとダウンロードが始まります。



  8. ダウンロードが終了するとデスクトップに"DarwinStreamingSrvr5.5-OSX"ディスクがマウントされます。



  9. インストールを実行します。インストーラが動き出したら、続けるをおして先に進みます。





  10. インストールが完了するのを待ちます。



  11. インストールが完了すると、自動的にSafariが起動してQuickTime Streaming Serverの設定が始まります。


QuickTime Streaming Serverの設定

 英語で「うわーーっ」気分になりますが、基本的にはほとんどいじる必要はなくて、どんどん先に進めばいいだけです。

  1. ストリーミングサーバーの管理者アカウントを作成する画面から始まります。好きなアカウントとパスワードを設定します。絶対忘れないように注意します 。

    もしこのページを間違って閉じてしまった場合は、http://127.0.0.1:1220/で開けます。


  2. 外部接続(BroadCaster)で送られてくるMP3(オーディオデータ)のストリーミングをするためのパスワードを設定します。忘れてしまわないように注意します。



  3. 続いてストリーミングサーバーへの接続をSSLを使って行うかどうかを設定します。SSLを使って接続するとログインするときのセキュリティが高まります。あとでも変更できますのでチェックをつけなくてもかまいません。

    つけるとログインするときにパスワードが盗まれにくくなります。推奨です。


  4. 放送(ストリーミング)する動画や音楽をどこにおくかを決める設定になります。この中におかれている動画はすべてストリーミングで公開されます。このまま変更せず先に進んでもかまいません。

    動画等が別パーティションや外部ドライブ等ある場合はここを変更するとオッケー。


  5. ストリーミングを80番のポートを使って配信できるようにするかを設定する画面です。いじりません。ここをオンにしてしまうと、パーソナルウェブ共有が起動できなくなってしまいますので注意します。

    ストリーミング専用サーバーにするというのでなければいじらない方が得策です。


  6. Finishを押して設定は終了です。



  7. QuickTIme Streaming Serverのメイン画面になります。

    イヤッホー!!


  8. これでライブ放送や高度なストリーミング放送ができるようになりました。




  9. ついでにストリーミングサーバーへの接続を制限するための設定をしておきます。これをやっておかないと、誰でも、このストリーミングサーバーに接続して、ここを利用して動画配信をすることができてしまいます(たぶん、試していないのでわかりませんが、設定しておいて損はなさそうです)。知らないうちに勝手に、生中継サーバーとして使われてしまっては困りますので。メニューからGeneral Settingを選択します。




  10. "Change Movie Broadcast Password..."をクリックします。



  11. ストリーミングサーバーに接続して、User NameとPasswordを設定しておきます。入力がすんだらChange Passwordを入力して完了です。

    ユーザーネームやパスワードを忘れないように注意


  12. これでQuickTime Streaming Serverの最低限の設定は終了です。



動作確認

ストリーミングサーバーが正しく動作するかテストします。QuickTIme Streaming Serverは初期設定では/Library/QuickTimeStreaming/Movies/内にあるファイルをストリーミング配信します。Appleさんがここにサンプルムービーをおいてくれていますので、とりあえず、それが再生できるか試してみます。


このぐらい用意されている


  1. ストリーミングで送受信できるかを試すには、QuickTime Playerを使います。



  2. ダブルクリックして起動させたら、メニューのファイルから「URLを開く...」を実行します。



  3. 「URLを開く」ダイアログが出ますので、ここに以下のようなURLを入力します。
    ちなみにrtspというのはたぶんReal Time Streaming Protocolの略だとおもわれます。忘れやすいのでしっかり覚えておきます。わたしはよく、「えーと...rstpだっけrtspだっけrtpsだっけ?」と悩みます。



    テストするだけなら

    rtsp://127.0.0.1/再生したいファイルネーム

    ddo.jpのドメインを持っているなら

    rtsp://あなたのドメイン.ddo.jp/再生したいファイルネーム


  4. ここでは例として/Library/QuickTimeStreaming/Movies/内にあるサンプルムービーの"sample_h264_300kbit.mp4"を再生できるか試してみます。以下のURIを入力し、OKを押します






  5. QuickTimeの動画が再生されれば完了です。

    ジュァーーアアアアアーーアアアアアーン(繰り返す)そんな感じです


  6. うまく再生されない場合は、URIやファイル名があっているか確かめます。それでもうまくいかない場合はポート554を追加してURIを入力してみます。

    rtsp://127.0.0.1:554/sample_h264_300kbit.mp4


  7. QuickTime Streaming Serverは配信にポート554を使っています。インターネット上に公開する場合はルータの設定もポート554が開いているか確認しておかないと、サーバーは正常に動いてくれていても、外部からは動画を見ることができなくなります。



動画を配信してみよう

 ここまでくれば、自分で撮影したムービーや音楽などをストリーミングサーバーで配信するのは簡単です。適切なフォーマットに変換したファイルを/Library/QuickTimeStreaming/Moviesにおいておくだけです。

  1. 変換フォーマットはMP4, MP3, 3GPPと選ぶことができますが、回線速度のことも考えて、あまりファイルサイズが大きくなりすぎないようにします。
    とりあえずテストとして試す場合、無難なのは、書き出しを「ムービーからMPEG-4」、出力を「デフォルト設定」にして、オプションから「ストリーミングを使用する」にチェックをつけて書き出しておくことです。ただし、この操作をおこなうにはQuickTImeProにアップグレードする必要があります。
    iMovieなどではProにアップブレードしなくても、メニューから書き出しまたは共有を実行するとQuickTime項目から、メール用やwebストリーミング用などが簡単に選べますのでラクチンです。




    ここのチェックを忘れるとストリーミングできず415エラーではじかれます。

    相手も確実にQuickTime7であれば問題はほとんど起きませんが、ver7を利用できないWindowsMeや98、95ユーザーのことを考えるなら、movフォーマットかh264でないmp4フォーマットあたりがよい...んでしょうかね。この辺はよくわかりません。


  2. /Library/QuickTimeStreaming/Moviesを開きます。



  3. これから公開したいファイルをここに移動させます。

    ここではDSCN2448.MOVという動画を配信したいのでこれをドラッグアンドドロップ。


  4. あとはQuickTime PlayerでこのファイルのURIを開けばストリーミングで再生が行われるはずです。

    実行!


  5. ストリーミングサーバーへの接続が始まり、うまく接続できると再生されます。

    つながれーー。


    接続完了。404エラーが出るときはファイル名に間違いがないか、ファイルの場所は間違いないかを確認します。


  6. もし移動したファイルがうまく再生できない場合は、アクセス権等も確認しておきます。

    Finderのファイルメニューから「情報を見る」を実行して、その他が読み出しのみになっているかを確認します。(デフォルトではオーナーをqtss、グループがadminを指定しているようですが、ここまで設定しなくても配信できます)


よくわからないときは

 QuickTime Streaming Serverに日本語のヘルプが用意されていますので参考にします。

  1. メニュー左下にヘルプマークがあるのでクリック




  2. ヘルプが出るので上手に利用します。




ストリーミングサーバーの管理

 ストリーミングサーバーで回線がパンクしてしまったり、悪意のある人に利用されないためにサーバーのステータスも確認しておきます。

  1. ストリーミングサーバーのトップページを開きます。



  2. General Settingsを開きます。



  3. "Max.Number of Connections:(最大接続者数)"と"Max. Throughout:(最大転送量)"を設定します。使うと考えられるユーザー数をよく考えて設定しておきます。


    アップル:QuickTime Streaming Server-仕様-



  4. 必要があればサーバーに接続しているユーザーの状態もチェックしたりします。







  5. 何かあったと思うときはError logやAccess Historyを読むようにします。




    エラーログをみたいり


    ヒストリーを見たりする



  6.  ストリーミングサーバーを実現する場合、注意しなくてはいけないことがあります。まず第一に帯域の確保です。平たくいうと、あなたがインターネットでデータをやり取りできる量です。あなたのサーバーでビデオ等を配信するのはできますが、もしあなたの配信しているデータがとても面白くて、いろいろな人がどんどんやってきて、アクセスが集中すると、回線がパンクしてしまいます。これはあなたにとって困るだけでなく、あなたが契約しているプロバイダさんにも迷惑がかかります。場合によっては停止処分を受けることもあります。アクセス制限をかけたりする等、十分注意する必要があります。

     もう一つは、著作権、肖像権の問題です。映画やテレビのように著作権のある映像や誰かのプライベートな画像を自分で作ったサーバーで公開することはいけないということです。あなたはよくても多くの人が困ることになるかもしれません。もちろん制作したあなたが「愛娘-5歳、初めてのおつかい-」というホームビデオを公開するのなら、それほど問題はないでわけですが、それでも、流出した映像がいつか何か問題を起こすかもしれません。

Trackback

No Trackbacks

Track from Your Website

http://earlybirds.ddo.jp/namahage/inegalog/trackback/tb.php?id=32
(言及リンクのないトラックバックは無視されます)

Comments in Forum

4 Comments