2013年7月21日日曜日

SpeechJammer+つくった&展示してきたよ!

7月19日に GoogleJapan で行われた DemoParty に SpeechJammer+ というアプリケーションを展示させていただきました。以前 SpeechJammer というのを作って公開していたのですが、何かが起こったみたいでアクセスがとても伸びていまして、ならばもう少し楽しくできないか??という発想で続編的なのを作りました。

まず、SpeechJammer の説明です。2012年のイグノーベル賞アコースティック部門を受賞したアルゴリズム、および物理ガジェットです。(注:アルゴリズムの発明者は産総研にいらっしゃる栗原一貴氏で私ではありません。)アルゴリズムは「集めた音を0.2秒後に再生をする」という極めてシンプルなものですが「集める音」を自分の会話の声として「0.2秒前の自分の会話が再生される」のを実際に体験すると、違和感を感じ会話をストップしたくなってしまいます。名前の由来もここにあると思います。ユースケースとしては「ちょっとおしゃべりな人に静かにしていただきたいときに使う」という感じになります。
ただ、「0.2秒前の自分の会話が再生される」というのに違和感はあるのですが、何か楽しさもあるんです、不思議と。そこで「もっと面白くできないかな〜??しかもブラウザ上で。」と考えたところ「0.2秒前の会話にサウンドエフェクトをかけて再生してまえ!あと0.2秒前の映像も流してしまえ!」と思いつき実装をしてみました。個人的には理由はわかりませんが、暇つぶしに遊んでしまう、おもちゃ的な楽しさがあると感じています。

技術的には、マイク入力・カメラの扱いで getUserMedia() (WebRTC)、サウンドエフェクトには WebAudioAPI、あと細かいところですがノブには polymer/WebComponents (@agektmr氏作)を使っています。(Web MIDI API も使いたかったのですがアイデア不足の為、今回は組み込めませんでした。。。orz)SpeechJammer+ のソースコードは github で公開しているので、気になる方はこちらからどうぞ!! ▶ ソースコード
そして、LiveDemoはこちらになります ▶ LiveDemo
ライブデモは Google Chrome(ブラウザ)での動作を、またハウリングを起こしやすいので、ヘッドホンをしてお試しください。映像のプレイバックは力技でやっていまして、遅延が時間とともに酷くなりますので、おまけ程度ということでお願いします。。。


DemoPartyについては、MAKERな方々が集まってワィワィやる的なイベントでした。すっごく楽しかったです。そしてウダーの宇田さん、オタマトーンで明和電機さんもいらっしゃってデモ兼プレゼンテーションをされていました。私もプレゼンテーションをさせていただきましたが、デモで音声を出せなくちょっと残念でした&準備不足ですみませんでした、、、orz こんな感じでプレゼンテーション(@tyoneさん、写真ありがとうございました!!)

MAKER Conferenceには1度だけ参加経験はあるものの、展示する側としてMAKER系のイベントに参加するのは初めてでしたので、かなりドキドキでした。終わってみると展示する側として参加して、また違った楽しみ方があることを知りました。ホント、楽しかったです。こんな素敵な場を提供くださったGoogleの皆様本当にありがとうございました!!