CodeIQ MAGAZINECodeIQ MAGAZINE

ビデオ・フィルター言語「Video Shader Script」を開発者・中島聡氏が熱く語る! #OpenGL #Co-Edo

2014.01.16 Category:勉強会・イベント Tag: , , , ,

  • 3
  • このエントリーをはてなブックマークに追加
main3

Windows 95などのアーキテクトとして知られ、ギークの間で高く評価されるブログ「Life is Beautiful」の運営者でもある、中島聡さん。

現在、中島さんが手掛けるビデオ・フィルター言語、「Video Shader Script」についての講演の模様をお届けします。
by 馬場美由紀 (CodeIQ中の人)

Hot startups beer bash tokyoに中島聡さん登場

コワーキングスペース茅場町(Co-Edo/コエド)を会場に、2013年夏からほぼ月イチのペースで開催されている勉強会、Hot startups beer bash tokyo。新サービス、新アプリなどの開発者をゲストに、ビールを飲みながら、Hotなサービス、アプリについて熱く語り合う場となっている。

第5回は、米シアトルに在住の中島聡氏を招聘。現在、中島氏が手掛けるビデオ・フィルター言語「Video Shader Script」についての講演が行われました。

これなら動画がイケルかもしれない

2008年、増井雄一郎さんとBig Canvasという会社を立ち上げて、PhotoShareというサービスを始めました。ビジネスモデルとしては、画像のシェアリングサービスの「PhotoShare」は無料で、そこにアドオンで、PhotoArtistという画像処理のアプリケーションを有償で提供します。

静止画であっても、この頃は最初のiPhoneだったので処理はものすごく遅い。全部CPUでやっていたので、1枚の画像の変換で0.5秒程度かかっていました。

しかし、僕自身はアプリ的には気に入っていて、思い入れがありました。
その後、アップルがiPhone5をアナウンスした時に、その発表会で、GPUの性能向上のグラフを提示したのですが、それを見て、僕は「あれっ?」と思った。ここまで性能向上しているなら、動画が処理できるかもしれない……そんな思いつきで始まったのが、「Video Shader Script」のプロジェクトです。

誰も作っていないものを作りたい

技術者特有の、というか、僕のものの考え方ですが、開発に際しては、まずできる・できないは別にして、ゴール設定をする。この場合、やりたかったことを簡潔に言えば、「かつてPhotoArtistで静止画でしかできなかったことを動画でやろう」ということです。

そして、ゴール設定の“縛り”としては、第一に、少なくともiPhone4Sでも使えて、iPhone5Sならすごいパフォーマンスが発揮できること。

次に――OS10用にアップルが出している、Quartz Composerという隠れたすごいソフトがある。これが実によくできていて、グラフィックな画面で処理の手順を指定し、プログラミングなしで画像処理だったり動画処理だったり、というソフトが作れる。もっともこれはほとんど知られていなくて、アップルも力を入れていないので、当然ながらiPhoneに移植してくるとは思えない。

ただ僕自身としてはすごく欲しい。というわけで、デザインゴールのひとつとしては、Quartz Composerくらいの機能を実現したい。実はQuartz Composerって言うのは単に画像処理するソフトじゃなくて、画像処理するソフトを作るソフト、なんです。それこそがすごい点で、したがって当然、そこまで実現したい。

iPhoneやiPadは単に『メディアを消費するデバイス』だという人がいるけれども、僕はそれは間違っていて、最終的には、iPhoneやiPadで、今までPCでできていたものとかがサクサクできるようになるべきだと思う。それを実現するのはソフトウェア・デベロッパーの役割で、であるなら、それをしたいな、と。

そこで現状はといえば、アップルストアをチェックしても、画像処理のアプリはほとんどが静止画で、動画は2、3のみ。しかも大したことはやっていない。当然ながら「動画処理のソフトを作るソフト」なんて作っている人はいない。僕としては誰も作っていないものを作りたいから、だからそこまでいこうと。

「操作性と、プログラマが存分にいじれる言語が並立」

Quartz Composerは、先述のようにグラフィックで操作していく。この方式はいい部分もあるんだけれど、いざ自分で突っ込んでカスタマイズしようとすると、非常にわかりにくくなる。プログラマとしては、キーボードを使ってサクサクっと組み立てたい時もあると思いますが、それができない。

そこで、Quartz Composerみたいなこともできるけど、プログラマも簡単にいじれる言語もある、というところまでもっていきたい。そんなわけで言語設計に取りかかり、9月10月は死ぬほど働きました。

さて、PhotoShopのプラグインに、Filter Forgeっていうのがあって、これがまたよくできている。静止画だけではあるけれど、Quartz Composerのように、フィルターを組み合わせたメニューアイテムを、PhotoShopにプラグインで足すことができる。さらにFilter Forgeコミュニティというのがあって、フィルターをシェアリングしていたりする。

同じように、僕としてはVideo Shaderを開発環境として提供して、その中でパワーユーザーがフィルターをいろいろ作り、それをみんなが交換し合って楽しむところまで持っていきたい――という壮大な計画があるんです。

エンドユーザーが使いやすいグラフィックが課題

僕としてはQuartz Composerみたいなグラフィックな開発環境と、言語による記述とがほぼ1対1でマッチングして、双方行き来して理解しやすいものにしたい。もちろん前提として、それがiPhoneでわかりやすくできなきゃいけない。

そこで、グラフィック部分は結構苦労したんです。例えばQuartz Composerみたいな完全なフローチャートを書くのでは、iPhone上だとハチャメチャになってしまってわからない。そこで、レイヤを分けても画面上ではシーケンシャルで見られるようになっています。

ただ現時点では、アプリとして機能的にはある程度のところまで来たけれども、エンドユーザーにも使えるかという点ではちょっと難しいかもしれない。そのバランスはこれから考えなきゃいけないと思う。
言語側に関しては、JSON(JavaScript Object Notation)ベースで構築されています。僕が何かを開発している時もそうですが、なるべくサクサク書き進めたい。そこで、ディクショナリやアレイさえ書ければできる言語にして、そのデータを使ってやりますよ、と。

だから構造としては非常に簡単にできています。

※機能・Video Shader Scriptの記述の実際については、中島氏のブログ「Life is Beautiful」に詳しく述べられている。

4%のヘビーな有償ユーザーがいてくれればいい

今後に関しては、まずはちゃんとローンチすること。
マーケティングプランはあまり突き詰めて考えていませんが、とにかく100万ダウンロードくらいまでいかないと意味がないのではと思っています。

まずは無料版で出して、今あるどんなフィルター・アプリよりもはるかにいいということを広く認知してもらいたい。100万ダウンロード程度に達した段階で、フィルターをコンポーズする機能があるバージョンになるのかどうかは未定ですが、有償版のリリースに踏み切ろうと思います。

これまで少額で多くの人に有償版を使ってもらうサービスをやったことはありますが、これに関しては、思い切って高い価格設定にしようと考えています。4~5%でいいから、そういう人たちにちゃんとお金を払ってもらう、そういうビジネスモデルにしようと思っています。

例えば小さなユーザーから一月いくらのような形でお金を頂くモデルだと、面倒見だけで大変になってしまいます。むしろ、大きな会社にビジネス目的で使っていただいて、それなりの料金を払ってもらい、コミュニティを支えてもらう形になれば、などと思っています。

中島さんの話に聞き入る参加者の皆さん。講演後は質問も飛び交っていました。

Hot startups beer bash tokyo ライトニング・トーク

「エンジニアだからできる自由な生き方」 by 増井雄一郎氏

増井さんのLTのネタはなんと3通りの中から選択式。司会者による選択の結果、上記のお題になりました。

「自由」にはさまざまな考え方があるが、端的には「自分の人生を自分で決定できる」ことが肝心。しかし、自分の自由と他者の自由はしばしば衝突する。そこで自由を獲得するには戦略が要る。まずは挑戦して変えていけるものと、変えられないものとを見分ける目が必要である。

幸い、プログラマは個人でできる仕事の領域が広く、自分で決定できる選択の幅も大きい。また、大人は自分の居場所を選ぶことができる。自分が望む自由に従い、それを受け入れてくれるところを積極的に選ぶべき。

しかしそのためにも、自分が何が好きで、そのためにどんな自由を獲得したいのかを意識的に問いかける必要がある。それが見つけられれば、プログラマとして幸せな人生が送れるのではないか。

「ガラポンTV API」 by ガラポン株式会社 代表取締役 保田歩氏

続いて登場したのは、テレビ業界に革命を起こすべく起業したガラポンの保田歩氏。

ガラポンTVは8チャンネル分のワンセグチューナーを持ち、500GBのHDDを内蔵、テレビ番組を24時間×2週間分、全録画でき、インターネット経由で再生できる。保田氏はガラポンTVのテレビ視聴革命のポイントとして以下の5点を挙げた。

  1. 時間の制約なし(全テレビ番組録画/8チャンネル×24時間×3か月)
  2. 場所の制約なし(インターネット+マルチデバイス視聴+オフライン再生)
  3. 検索(番組名+説明文+番組内テキストで録画番組を検索)
  4. ソーシャル(番組レビューやLIKEを活用した番組の発見)
  5. オープンプラットフォーム(API公開&ハードウェアOEM提供可能)

中でもエンジニア向けにお伝えしたい特徴は、オープンプラットフォーム志向であること。アプリケーションをAPIを通じて作成でき、ハードウェアも作れる。

APIを通じ番組動画ファイル、番組表データ、字幕データを取得できるので、字幕から世の中のトレンド分析なども可能。ガラポンTVの登場で、テレビとネットの融合にようやく具体的な動きが出てきたと言える。

「CodeIQの出題者になりませんか?」 by CodeIQ 石原道隆

今回スポンサーとして参加者にお寿司をふるまったCodeIQからもチロル殿下こと、石原がLT参加しました。

CodeIQはITエンジニアの遊び場として、2012年の6月18日にスタート。現時点で約3万人の方々が問題に挑戦しています。

問題には2つの系統があり、1つは純粋にお遊び。もう1つは企業の協力で出題され、解けた人には企業からスカウトの声がかかるもの。スカウトされる率は48.2%に上っており、人材マッチング法としても有望なのです。

この日のお願いしたことは2点で、ひとつはぜひCodeIQの問題を解いていただきたいこと。もうひとつは、出題してくれるエンジニアの募集。こういった問題を作るのが好きな方はもちろん、最近本を著した方、会社やブログ、自分の名前を売りたい方、お小遣いを稼ぎたい方など、ぜひ参加していただけるとうれしいです!

新サービスを世界に向けて発信!ビールとともに語りましょう!

Hot startups beer bash tokyoは、新サービスにかける熱い想いを、開発者自身が語る場。ということでさらにLTタイムは一人3分LTへ。

kibitanさん

Railsで複数アプリケーションで同一ユーザサインイン・サインアップを実現する手法

LTのスライドはこちらからどうぞ!

Tak Yanagidaさん

「IT英語の読解講座はじめました」

T.Inoueさん

SCAPEというソーシャルガイドのアプリ

Takahiro Ichihashiさん

リアルタイムコミュニケーション&ライブストリーミング

blackhorryさん

議論SNS「ギジオ(GIZIO」

最後はスタッフであり、当日の司会進行を務めた橋田一秀(@hassy0607)さんと、田中弘治(@mon_sat)さんから新サービス「Co-Edo Expert Sourcing」について発表がありました。

「Co-Edo Expert Sourcing」とは、スターエンジニア・デザイナーチームに仕事を依頼できるプロジェクト。個人ではなかなかアプローチしにくいフリーランスの優秀なエンジニア・デザイナーに開発をお願いできる画期的な仕組み。進捗管理もCo-Edoにお任せできる。また、Co-Edoではプログラマー向けの勉強会も絶賛開催中なので、こちらも要チェック!

当日の様子は動画で公開しています。ちなみに、前回のHot startups beer bash tokyoは、増井雄一郎さんの新サービス「wri.pe」についてのイベントでした。ぜひ、こちらのレポートもどうぞ!

CodeIQコード銀行にあなたのコードを預けてみませんか?

  • CodeIQコード銀行ではあなたのコードを財産と考えます。
  • お預かりいただいたコードは、CodeIQコード銀行がしっかり評価し、フィードバックいたします。
  • 当コード銀行にお預けいただいたコードは、企業がみてスカウトをかける可能性があります。
  • 転職したい方や将来転職することを考えている方で、今の自分のスキルレベルを知りたい方はぜひ挑戦してみてください。
  • 企業からスカウトがきたら困る人は挑戦しないでください。

興味を持った方はこちらからチャレンジを!

  • 3
  • このエントリーをはてなブックマークに追加

■関連記事

Webで簡単・効率的にアニメーションを実現できる最新フレームワーク・CSS3アニメーションを紹介... MozillaでWebアニメーションの機能の開発者が登壇 Webでアニメーションというと、数年前まではFlashコンテンツが当たり前に使われていた。 しかしスマートフォンの普及と共に、Webから駆逐され、今はHTML5でアニメーションを表すには、setInterval関数やrequestAnim...
「React.js × React Native」―メリット・デメリット、将来はどうなる?【後編】... LT1「Webpackを使ったReact Hot Loaderの導入」 パネルディスカッションの後は、LTタイムに。最初に登壇したのはISAOで社内SNS「Goalous」の開発を行っているフロントおよびサーバサイドエンジニアの吉田将之さん。テーマは「Webpackを使ったReact Hot Lo...
「React.js × React Native」―メリット・デメリット、将来はどうなる?【前編】... React・React Nativeをテーマにパネルディスカッション 3月16日、リクルートテクノロジーズで、React.js meetupとReact Native meetupによる合同勉強会が開催された。 今回の勉強会はWeb開発において急速に普及しつつあるReact、そしてその書き方をベ...
JavaScriptとネイティブをつなぐ便利機能!──React Native ネイティブモジュール... bridgeとはどんな技術か React Nativeに関する勉強会「React Native meetup#4」が、1月26日に渋谷のエンジニア&デザイナー向け無料イベントスペース「21cafe(ニイイチカフェ)」で開催された。 最初に登壇したのはキュア・アップ CTOの髙木健介(janu...
VRコンテンツはいかにして開発するか?「VR Tech Tokyo #5」でそのコツが解明された... VRアクティビティの企画作りにはゲーム制作経験が邪魔 VR関連の開発者向け勉強会「VR Tech Tokyo」。 第5回目となる今回は、土曜日の午後に開催。時間的にも余裕のある中で、セッションが開催され、また同セッションで紹介されたさまざまなVRがデモ展示された。 最初に登壇したのは、バンダ...
WebVRと支える技術・コンテンツ作成入門ほか全セッションレポート──シン・WebVRとか文化祭... 基調講演を務めたのはMozillaの清水氏 基調講演に登壇したのは、Mozilla Japanの清水智公氏。講演タイトルは「WebVRとそれを支える技術」。 非営利団体Mozillaは、ブラウザベンダーの中でWebだけで勝負している唯一のベンダーである。Mozillaでも昨年より、ブラウザでVR...

今週のPickUPレポート

新着記事

週間ランキング

CodeIQとは

CodeIQ(コードアイキュー)とは、自分の実力を知りたいITエンジニア向けの、実務スキル評価サービスです。

CodeIQご利用にあたって
関連サイト
codeiq

リクルートグループサイトへ