ニコニコ超会議とニコニコ動画・生放送を支える技術

ニコニコ超会議とEPUB

今週末はネットではニコニコ超会議の話題で持ちきりでしたね。私も参加しようと思ったのですが、友達の家でオールナイトで飲んでいたので参加できずでした。個人的には堀江さんの以下の記事に思わず突っ込んでしまいました。

ニュース長すぎ、EPUBはクソ規格–ホリエモンがニコニコ超会議で語った全文2 #chokaig
http://matome.naver.jp/odai/2136713291397662901

堀江:けど、俺は正直いって、Epubの方がムカツクよ。Epubはクソ規格だよ、クソ規格。

松浦:どこらへんが?

堀江:もっさりしすぎでしょ。たとえばメルマガをわざわざEpub化してさ、俺も一部Epub化して出してるけども、もうEpubなんてクソだよ、クソ。読みにくい。縦書もいらねえ、ルビもいらねえ。ルビなんて見ねえだろ、このやろうって。俺はたとえばアプリで、それをわざわざEpub化して、ダウンロードさせて読ませてるサービスを、別にディスってるわけじゃないよ? ディスってるわけじゃないけど、この間、水道橋博士の原稿を送ってもらったんだよ。だけど読みにくいのさ。なんかEpubでiBooksでリーダーで読むと、めちゃくちゃ読みにくもん。ぜったいテキストがいいって。

たとえば日刊サイゾーっていうのがある。日刊サイゾーのアプリを入れてるんだけど、めちゃくちゃサクサク読めるわけ。テキストと写真がちょっとしか載ってないから、いますごい読みやすいんですよ。

で、僕はテキストの時代だと思ってる。映像も画像もそれはリンクで飛ばせば、Facebookのタイムラインみたいに、サムネイルだけ載ってますみたいな。僕はその程度でいいと思うんですよ。テキストだと表示も早いし、アプリもさくさく動く。

松浦:それで情報があっさり入ってきて、スマートフォンで配信されて。

堀江:そう、だからいま僕が作ってるのは、そのメルマガを読むための専用アプリを作ろうとしているんだけど、メルマガリーダー。ちょっとブロマガの人に言わなきゃいけなかったんだよね。あのーメルマガリーダーを作る会社見つけてきたんで、作ってください。Epubとかめちゃくちゃだせえから。最悪だからあんなの。俺はそんなんじゃ読まない。

で、電子書籍ってさ、みんなEpubじゃん。本当さ、なんとかしてほしい。テキストでいいだろって。テキストでいいのに、なにこだわってんの? だから本をすごい読みたいユーザーしか読まないんでしょ。

EPUBって、XHTMLファイル(テキスト)をZIPで圧縮して、そのファイルの拡張子を.epubに変えるだけでの規格で、ページをめくる処理とかはReaderアプリ側で実装しているんですけどね。。。ルビや縦書を入れるかどうかはXHTMLの自由だし。って2009年にEPUB ReaderのiPhoneアプリを開発していた私は思ってしまいました(EPUBに関して突っ込んだところ、はてなスターを沢山もらいました)。このEPUBの技術仕様は意外と知られていなくて、EPUBで電子書籍を作っている出版社などでも知られていない(オーサリングツールを使っている)場合が多いです。

堀江:いままで本を読んでた人たちはEpubでKindleで読んでいいんだけど、俺ね、Epubに対してはめちゃくちゃストレス溜まってたので、ここで言わせてもらう。Epubはクソだ!テキストでええやん。

松浦:そうですね。読むだけだったら、ぽんってテキストで受け取れば。その方が早いですね。

堀江:読む方もテキストとかをベースにした方が新しい形の電子出版、電子書籍がブレイクしてくると思うわけですよ。テキストでサクサク読めると。Epubの利点はコピープロテクトだけだからって。

松浦:あー(コメントが)出てますね。

堀江:本当に、だからセコいのやめよう? コピープロテクトとかさ。

EPUBはテキストだし、KindleはEPUBでは出稿できないし(mobi形式に直す必要があります)、EPUBにはコピープロテクトなどのDRM機能はありません。

ニコニコ生放送をオープンソースRed5で実装するには

今回の超会議の様子もニコニコ生放送で流されましたが、ニコニコ生放送のような双方向性のあるFlashサーバーをオープンソースで実装する手段としてRed5があります。

Red5ユーザー会
http://www.red5.gr.jp/

Red5は、Javaで開発されたFlashサーバーで、動画のストリーミング配信はもちろん、双方向な通信を行うこともできます。コメントやFlash上のオブジェクトの共有などの機能も標準で搭載しています。

Red5の特徴

・音声ファイル(MP3, AAC, M4A)や動画ファイル(FLV,F4V,MP4)のストリーミング配信が可能です
・Webカメラなどからのストリーミング映像を録画することが可能です
・複数のクライアント間で共有できるオブジェクト(SharedObject)をサポートしています
・映像や音声などのライブ映像をリアルタイムに配信することが可能です
・クライアントサイドからサーバーサイドのメソッド呼び出しが可能です
・サーバサイドからクライアントサイドのメソッド呼び出しも可能であり、これによりプッシュ型のアプリケーションも実現可能です

インストールは鬼のように簡単です。
http://www.red5.gr.jp/docs/7->wbr />install

ドワンゴにおけるRed5の評価と実際に採用された技術

株式会社ドワンゴでは元々はこのRed5を評価していたのですが、スケーラビリティに問題があってWowza Media Systems社のWowza Media Serverを採用したという経緯があります。

ニコニコ動画の1万人生中継,舞台裏での技術者の奮闘
http://itpro.nikkeibp.co.jp/article/OPINION/20080812/312687/

ただ、比較的小規模なFlashの双方向性通信やストリーミング中継にはRed5は充分に使えると思います。スケーラビリティも一応構成は可能です。

開発費0円でニコニコ生放送を作ってみた
http://www.slideshare.net/ToriiMiyukki/0-6284108

ニコニコ動画は元々Synvieプロジェクトのパクリ

ニコニコ動画に関して思うところは沢山あって、元々ニコニコ動画はIPA未踏ソフトウェア創造事業に採択されたSynvieというプロジェクトのパクリだったんですよね。動画にコメントをつけるというアイディアでsynvieが始まったのが2005年、ニコニコ動画が作られたのが2006年です。

Project Synvie
http://synvie.net/index.html

Synvieとは

Synvieとは、まったく新しいブログ/SNS時代のマルチメディアコンテンツ配信・コミュニケーションシステムです。従来型のコンテンツ配信システムは、 ただ単にコンテンツを配信するだけで、インターネットのインタラクティブ性やネットワーク性を考慮していません。 我々はマルチメディアコンテンツにブログの仕組みを取り入れることによって、既存のブログと同様に、映像コンテンツを話題とした コミュニティの生成を支援し、ユーザの口コミによってコンテンツが効率よく配信・宣伝される仕組みを考えています。いわゆるビデオブログ(Videoblog)と呼ばれるものの一つの完成形であると思っています. これらの仕組みにより、低コストでかつ極めて話題性の高いコンテンツ配信の仕組みを提案します。

その辺の裏事情はけっこう聞いているのですが、最初の頃はドワンゴの開発者も「Synvieからインスパイアされて作りました」と言っていたのですが、最近ではそういう前置きは聞かなくなりましたね。

WEBの世界においては、アイディアを最初に考えた人が偉いんじゃなくて、それを一刻も速くサービス化に持っていったほうが勝ちなんだなと当時は改めて感じました。