QuickTime Streamingの世界をのぞいてみよう。

木谷 公哉(kitani@bakkers.gr.jp) Valid HTML 4.01! Valid CSS!

0.最初に
私自身ストリーミングの初心者であり,ちょっとリアルタイムな映像もしくは蓄積したムービーデータのストリーミング(映像配信)をしてみたいなぁと思ったのがきっかけであり,MacOSXにはすばらしいことにDarwinの名の下にオープンソースとしてストリーミングサーバソフトが手に入ることで,いっちょやってやろうということで始めました。なお,本格的にサーバとして動作させるためにはそれなりの性能を備えたマシンが必要であり,製品であるMacOSXのネイティブコードとして動作するQuickTime Streaming Serverの方が何かとわかりやすいであろうとは思います。ここでの趣旨はちょっとやってみたい初心者向けのいわゆるセットアップガイドです。なお,ここではローカルもしくは,同一ネットワーク内での配信にとどめます。外部配信にはより深いネットワークの知識が必要となります。最後に若干触れますが,外部配信をする際には配信そのものが適当にしてできるものではなく,またかりにできたとしても,ネットワークへの負担まで考えなければ,周りに迷惑をかける可能性があります。
1.Darwinオープンソース
さて,DarwinオープンソースはMacOSXの基盤を支えるコアシステムから,様々な用途でつかう開発ツール,ソフトウェアと豊富にそろっています。残念なことにこれらはすべて英語を基本言語としていますので,英語の得意でない方にはつらいものがあるかもしれません。専門家であればそれを読み解くことは必須ですが,初心者には言語の壁ということでそこでつまずいてしまうかもしれません。若干のお金の余裕があるのであれば,1万円ぐらいの翻訳ソフトを購入して,Web翻訳機能を使うことが便利でいいですが,そうでない場合には翻訳サイト(たとえExcite)やMacOSX標準のSherlockに含まれる翻訳機能を使えばいいでしょう。
2.第一関門!「Darwin QuickTime Streaming Serverパッケージ」のダウンロード
何故関門なのか? それはまず「Darwin Streaming Sever紹介サイト」へアクセスしてほしい。英語がよくわからない方々にはなにやらさっぱりだと思いますが,トップに「Developer Connection」という文字があるのが見えることでしょう。そうです,ここは開発関係の人たちのコミュニティーサイトでもあるんです。Darwinなオープンソースソフトをダウンロードするには,あなたもとりあえずメンバーの一員にならないといけません。といってもYahoo!のように登録自体は簡単にできます。さてそれでは順を追ってダウンロードまでの道のりを説明しましょう。
  1. まずQuickTime Broadcasterをダウンロードしましょう。これはMacOSXネイティブであるのでインストールも簡単です。リアルタイム配信に必須のものです
  2. Apple Developer IDを所得
  3. Darwin Streaming Serverのページを開いて,Binary Releasesから最新のMacOSX用Serverバイナリ(Streaming Server 5.0.1.1:DMGイメージ)を所得しよう。なお,ダウンロードには先ほど所得したAppleIDが必要です。
3.パッケージのインストール
DMGイメージをダウンロードしたら,通常その中身は自動的に展開されるはず。後はパッケージインストールは非常に簡単。インストール後,自動起動するはずだが念のため再起動したほうがいいでしょう。
/System/Library/StartupItems/QuickTimeStreamingServer/が自動起動するためのスクリプトが入っています。通常これは1022/tcpを管理画面用として使います。配信にはReal Time Stream Control Protocol(RTSP: 554/tcp,udp)を使います。管理画面には80/tcpを使うこともできますが,Webサーバとバッティングするため使わない方がいいでしょう。
アクセスは,http://localhost:1022/ としてアクセスします。
4.Darwin QuickTime Streaming Serverの初期設定
まずは初期設定。非常に簡単だけれど英語表記なので初心者的にはとまどうかもしれません。すべて図付きで説明します。
5.Darwin QuickTime Streaming Serverを使った蓄積された映像の配信
蓄積された映像(とりあえずサンプル映像)の配信方法について説明します。
6.Darwin QuickTime Streaming Serverを使ったリアルタイム映像の配信
QuickTime Broadcasterとの連携機能において,リアルタイム配信をやってみよう。作成中。。。
7.同一ネットワーク外への配信について
Real Time Stream Streaming Protocol(RTSP: 554/tcp,udp)ポートを使用します。クライアントサイドから配信サーバへ向けて「554/tcp」が必要ということになります。この説明でわからなければ,基本的にTCP/IPの基礎知識ならびにポートに関する知識(Firewall周りの知識)の勉強が必要でしょう。
関連リンク
QuickTimeで生中継: オープンメール環境(OME)で有名な新居雅行氏のHPに実験結果とか,詳細情報が載せられています。
実験環境
マシン環境:PowerBook G4 1Ghz (Memory 1GB), HDD 80GB
ビデオ環境:iSight + iSight 1.0.2(ドライバ)
配信ソフト:QuickTime Broadcaster 1.0.1 (v102) + Darwin QuickTime Streaming Server 5.0.1.1(QTSS)
※テストなので,QTSSに直接ビデオカメラを接続しました。かなり映像がカクカクしてしまいますね。時間のあるときにいちどCPU負荷とかスループットとかの記録をとってみようと思います。と同時にいろいろと細かな設定を変えて最適なものがどれであるかも調査したいものです。。ちょっと今時間ないんで。。。