SoundPipes Conceptとは?

ImagePipesと同様に、Yahoo Pipesを音声に対しても使おう!という考え

Yahoo Pipesを使って、テキストに対して、いろんなソースからRSSを取得してマージしたり、検索語でフィルタリングしたり、しているように、
音声に対して、エコーや逆転再生のエフェクトを適用することを、Yahoo PipesのUIを使って組み合わせられるようにする。

ポイントは、音声処理機能をwebサービスとして公開すること。そしてYahooPipesを使ってシーケンシャルにつなげられるようにwebサービスのI/Fをそろえること。

SoundPipesを使えばどんなことができるの?

  • javascriptを使って簡単に音声のエコーをかける
    demo
  • オンライン音声編集ツールのバックエンド

SoundPipesの仕組みは?

  • 音声処理機能を提供するwebサービスの入出力仕様を(緩く)統一
    最低限満たすべき要件: 入出力はHTTP, MethodはPOST, Parameterは"data", ValueはUTF-8のJSON
  • JSONは最低限以下の形式をとる
    {"items":[{"url":"http://path.to/sound.mp3"}]}
    items配列の1要素が音声を意味する
    urlは必須
    webサービスの提供する音声処理機能に応じてJSON内に要素を増やしてもよい
    urlには、入力のJSON場合には、音声処理対象の音声のurlが入る
    出力のJSONのurlは、音声加工後の音声のurlが入る(webサービスのドメイン以下になるはず)

    ex: バンドパスフィルタのwebサービスの出力は
    {"items":[{"parameters":[{"low":400,"high":800}],"url":"http://path.to/sound_effected.mp3"}]}
  • アクセス可能ドメインが "*" なcrossdomain.xml をwebサービスのサーバ(加工後の音声が置かれる場所)に置く
    (Flashから音声を読み込んで操作できるように)
  • YahooPipesでこの入出力仕様を満たしたwebサービスを使ってPipeをつくるときに、
    YahooPipesでタグ SoundPipe をいれる
    ※タグは [Edit Source] の画面の右上にある [Properties] の中で設定できます

どんな音声処理ができるの?

http://SoundPipes.kayac.com/ ではひとまず以下の5つを用意しています。
これらに、↑の仕様にしたがってみなさんの開発したwebサービスを加えて、自由に組み合わせてSoundPipeをつくることができます。
みなさんの参加をお待ちしています!