携帯電話から学園祭生中継映像を視聴できる「にゃふにゃふ動画モバイル」を作ってみた!

昨日は感情が高まっていまい、あんな記事を書いてしまいましたが、ついに待ちに待った機能が登場です。その名も「にゃふにゃふ動画モバイル」

これまで学園祭生中継は、パソコンでしか見ることができ ませんでした。今回新たに開発した「にゃふにゃふ動画モバイル」は、携帯電話から生中継映像をリアルタイムに視聴することができます!さらに、PC版にゃふにゃふ動画で投稿されたコメントも、同時に見ることができます。

最終日だけの限定企画ですが、学園祭会場に来ても携帯電話で生中継を見ながら、楽しい企画を探して下さい!
http://live.sohosai.com/mobile.htmlより)

要は、学園祭会場の生中継ライブ配信映像を、リアルタイムに携帯電話でも見ることができるシステムです。

超頑張った。さすがに去年のにゃふにゃふ動画みたいに3日で開発というわけにはいかず、4日かかった。その上かなり不安定なシステムで、バグ修正に時間がかかり、最終日だけの限定公開になってしまった!
それでも、携帯電話への映像配信は、学園祭生中継プロジェクト5年間の念願だっただけに、1日でもやる意義があると思い、限定公開。上手く動いた場合は、はこんな感じになります。

これは、深夜に再放送中の映像なので、中身自体は昨夜に行われたステージのものだけど、再放送も動画はライブストリーミングで配信してるため仕組みは同じで、学園祭をやっている時間帯は当然、その時のライブ映像が流れます。また、動画の最後の方に映ってるけど、PC版にゃふにゃふ動画のメッセージサーバと接続しているため、コメントも見ることができます

これまで、学園祭生中継の映像を見るには、自宅のPCから見るか、学園祭会場の各所に設置した放送モニタ・中継本部大画面スクリーンでしか見るしか方法がなかった。でもこれがあれば、学園祭会場でフラフラしながら動画をみたり、筑波大に来るまでの電車の中で見たりすることもできます!

正直、リアルタイムでの携帯への動画配信は難しかった。保存済み動画の携帯電話配信なら、変換にいくらでも時間かけられるけど、生中継じゃあそうはいかない。時間の流れに追いつくように、変換処理をしていかないと、どんどんディレイが大きくなる。携帯のFlashLiteの制約もあって、この程度のフレームレート・音質が限界だけど、「学園祭会場の雰囲気をどこからでも見てもらう!」というコンセプトの実現には十分だと思う。

仕組み

3gppとかJavaアプリとかいろいろ検討したけど、やはりFlashLiteを採用。3gppは現状ではライブストリーミングは困難、Javaは1日毎に上限転送量があるので困難。というわけでFlashLite。FlashLite2.0搭載の携帯電話が対応機種となります。ただし、auSoftbankではなんら問題ないのですが、DoCoMoはFlashLiteの転送量制約が厳しく、残念ながら非対応です。申し訳ございません。
で、本システムの仕組みを簡単に言うと、以下のような感じです。

  • DirectShowでWindowsMediaのストリームを受信し、フィルタグラフを構築
  • 画像は1fpsで5秒間溜める、音声は5秒分バッファに溜めWave生成→mmfに変換
  • にゃふにゃふ動画メッセージサーバに接続し5秒分コメントを溜める
  • 溜まった画像とmmfとコメントを合成してswfにコンパイル→5秒1コンテナのswf
  • 携帯電話からアクセスすると、このコンテナをloadするための親swfが読み込まれ
  • キー入力があると、バッファの制限以内でコンテナをloadしていく
  • 再生が済んだコンテナは吐き捨て、これを次々と繰り返す

FlashLiteで連続再生する仕組みはニコニコ動画モバイルとほぼ同じで、実際この資料を大変参考にさせて頂きました。しかし、ニコニコ動画モバイルとは違い、あらかじめ動画のswfをすべて生成しておくことはできないため、大変荒いやり方ですが、上記の処理をリアルタイムにループさせ、なんとか追いついています。先ほどの資料によると1fps程度が限界のようなので、こちらも1fps程度にさせて頂きました。

携帯電話の制約上、キー入力がないと次のswfをロードできないため、auニコモバ同様、キー入力必須になっています。しかし、FlashLiteのバッファサイズの制約があるため、あまり先まで先読みができないので、連打して頂くことでギリギリつながってる感じです…。ニコモバauはわりとシームレスな気がするんだけど、先読みどうしてるんだろう。

というわけで

これが僕の4年間の学園祭生中継の集大成でしょうか。
バグ多数・超スーパー不安定なうえ、タイミングの同期が上手くいってなくて同じコンテナが重複再生されちゃったりとかあるけど、学生独自の実験的なサービスとして、寛大な目で見て頂ければ幸いです。

今日は最終日、祭りの最後をしめくくる後夜祭もあります。
みなさんに少しでも視聴頂けたらと思いますので、ぜひぜひよろしくお願いします!

http://live.sohosai.com/