ニコニコ生放送はいつから?
編集部
ニコニコ生放送の話は、いつ頃からあったんですか?
杉谷
生放送は昔からドワンゴが好きらしく、まあ、誰が好きかはわからないんですが、かつ、映像制作会社さんとも一緒にお仕事させていただいてきたこともあって、コンテンツを用意することも可能でした。ただ、肝心の生放送配信用ソフトが高価過ぎて手が出せなかったんですよ。
そんなときに弊社の糸柳という者が
Wowza Media Systemsの「Wowza Media Server」という製品を見つけてきて、それが、「1000ドル!?」「Javaで開発しやすい!?」「なんだって!?」という目的にあう製品だったんです。じゃあ、これで生放送をやろうと。
編集部
アイデアや素材があったところにソフトウェアがそろって、やろうと。
杉谷
ええ。生放送、みんな大好き。
編集部
ニコニコ動画とニコニコ生放送って、システム的に違うものなんですか、
杉谷
えっと…、メッセージサーバだけは少しカスタム版で、あまり変わりません。それ以外は完全に違います。
編集部
では、「ニコニコ」という名前がついているものの、ニコニコ動画とニコニコ生放送、全く違う別系統のシステムが2つある感じなんですね。
杉谷
そうなんです。ニコニコ生放送は、Webに関しては普通にPHP、Apache、MySQLのLAMP構成なんですが、フレームワークについては「SUGIフレームワーク 0.5」(通称)を使っています。
編集部
杉谷さん自作の?
杉谷
自作です。
編集部
SUGIフレームワーク 0.5(笑)
杉谷
0.5(笑)
編集部
まだ、メジャーリリースしてないんですね。
杉谷
ええ。まあ、ニコニコ生放送の開発期間は短かったんですが、こういった発展的に積み重ねてきたものがあったおかげで、ささっと1ヶ月ぐらいで作れました。
編集部
1ヶ月!
杉谷
リリース当初のニコニコ生放送は、Web部分はニコニコ動画本家をコピーし、プレイヤーは本家を気合いでカスタマイズしただけのものでした。
ただ、本家のプレイヤーは動画再生に特化しすぎてて、似ているようで生放送とは用途が違いすぎたんです。コードも邪魔なものが多すぎたので、作り直しました。現在の生放送プレイヤーはFlexとFlashと、ActionScript 3を組み合わせたものになっています。
プレイヤーは見た目だけでなく、作りも全く違うものになっている。上がニコニコ動画プレイヤー、下がニコニコ生放送プレイヤー。
編集部
全然違うんですね。
杉谷
誰も気づいてくれないんですが、あれは別物です。
編集部
確かニコニコ動画本家のプレイヤーはActionScript 2ですよね。今、新プレイヤーを開発してて、新バージョンはActionScript 3にあげるという…
杉谷
生放送はとっくに3です。誰も気づいてくれない…。
編集部
本家で使われていないActionScript 3やFlexを使ったのは、どうしてですか?
杉谷
僕は趣味でFlexをガリガリやっており、ActionScript 3に手慣れていたんですよ。ActionScript 2は、あんなおぞましいもの触りたくなかった。生放送は開発速度が最優先だったので、僕が手慣れているFlex Builderで使いたい。Flex Builderは、コードアシストなどが便利なので。じゃあ、しょうがない、表面だけを本家からパクり、ActionScript 3で作るという新プレイヤーになったんです。
編集部
なるほど。
杉谷
表面は変わらないので誰も気づいてくれない。誰か1人くらい「あれ、変わった?」って言ってくれても…。
編集部
本家はFlexは使ってないんですね。
杉谷
本家はそのままFlashで開発されています。本家新プレイヤーの方は生放送プレイヤーの成果を生かし、Flashをテンプレートとして、MVC構成にし、コントローラー部分をFlex Builderで開発する構成になっているはずです。
ニコニコ生放送の開発者は?
編集部
ところで、ニコニコ生放送は何人で開発されているんですか?
杉谷
3.1人です。
編集部
0.1人?
杉谷
新しく入った方で、任そうと思ったらモバイルチームに借りパクされてしまいました。なので、開発者としては3人です。もちろん企画も含めるともっとたくさんいます。あ、ただ、メッセージサーバーは戀塚さん(ニコニコ動画・開発総指揮者)にバインドされています。メッセージサーバーは全域で活躍しているので。
編集部
3人それぞれに役割とか決まっているんですか?
杉谷
基本、誰もがどのコンポーネントを担当できるように、ローテーションをかけて開発しています。
編集部
この機能専属、というのはない?
杉谷
できるだけなくすようにしています。
編集部
面白いですね。ローテーションで開発するという手法はどこからきたんですか?
杉谷
まあ、1人にバインドされてしまうと、ちょっとかわいそうなことになるので。これはドワンゴだけに限ったことではなく、よく見る光景なんですよ(笑) バインドされてしまうと不幸になるというのは鉄則ですね。なので、誰もがPHPを扱えますし、ActionScript 3を使えます。
そしてユーザー生放送へ