voiceJam 1.0beta

2008年8月18日

Asteriskを使って、電話で録音できる掲示板をつくりました。

voiceJam 1.0beta
http://voicejam.sonicjam.jp/
voicejam-bbs-posted-by-phone.jpg

大雑把なしくみ解説:
・電話の応答・録音はAsteriskが処理するAGIに記述
・録音が完了するとデータベースに完了ステータスを書き込む
・ブラウザでは電話番号とID番号を表示したあと、Ajaxによりサーバ上のステータスを定期的に確認する
・サーバ上のデータベースが完了ステータスになったらブラウザ表示を変更
・タイトルなどを入力して送信するとデータベースに情報を書き込み、投稿として保存される

Asteriskとは:
http://ja.wikipedia.org/wiki/Asterisk_(PBX)
http://itpro.nikkeibp.co.jp/article/COLUMN/20060330/233889/

現在わかっている欠点:
・電話が1回線しかない
・話す時間が10秒間固定

version 2.0の構想はあります:
・声を変換するボコーダー機能
・タイムライン上に声を配置できる機能

投稿者:
ken

漢字でモザイク

2008年1月9日

漢字でモザイク(猫)

<開発環境>
PHP4.4.7 + GDライブラリ + MySQL4.1.22

<前処理:漢字のデータベース化>
(1)
常用漢字を順番に一文字ずつ画像として作成
画像例:画像(愛)

(2)
漢字画像の各ピクセルの明度の平均値を計算し、その漢字の明度とする

(3)
漢字とその明度をデータベースに保存

<表示処理:画像のモザイク化>
(1)
画像を10ピクセルごとの明度の平均値を計算し、モノクロのモザイクデータを作成

(2)
明度に近い漢字をデータベースから抽出

(3)
表示

———-
テキストなので、
・指定した文章の文字を使用する
・フォント/サイズを変更する
・テキストのアニメーション
など応用ができそう。
今回はとりあえずそのための準備、という感じ。

投稿者:
ken

音声入力+デバイス

2007年12月5日

音声入力とデバイスを連携させて、
「なんだか気になるスクリーンセーバー」づくりを開始。

そして、なんとなくそれらしいものが出来ました。
出来上がったものはスクリーンセーバーではないFULLSCREENで、
これ自体はなんなのかわかりません。マイクから入力された音声をFlash上にテキストで表示し、
PC(ノートPCを想定)を揺らすと
Flash上のテキストもそれにあわせてゆらゆらと揺れます。

■仕組み
1.マイクで音声入力
2.音声をテキスト化
3.テキストがFlashに流れてくる
4.モニタの傾きにFlashが反応する

【今後の課題】
JulianとFlashの連携が強引(Julianの出力結果をテキストファイルにしてAIRのローカルファイルを読む機能で定期的に取得)。ノートPCに実装したときにGAINERがうまく認識されないのを改善。

——–Special Thanks of technic—————-
■技術
音声認識システムJulian
http://julius.sourceforge.jp/

+GAINER
http://gainer.cc/

+GAINER AS3用ライブラリ(さくーしゃ様)
http://saqoosha.net/2007/07/28/610/

Adobe AIR Beta2
http://labs.adobe.com/technologies/air/

Flash AS3ライブラリ
APE
http://www.cove.org/ape/

投稿者:
sasagawa

FMSにNetConnectionで接続する方法です。
メモ的に登録するのでコメントとかあって汚いですね。

Actionscript:
  1. // FMS試しにつなげてみる
  2. var nc:NetConnection = new NetConnection();
  3. nc.objectEncoding = ObjectEncoding.AMF0;
  4. // FMS接続
  5. nc.connect("rtmp://server.sonicjam/develop");
  6. // netConnectionのレスポンス
  7. nc.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
  8. //
  9. nc.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
  10. //
  11. nc.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
  12. // セキュリティエラー
  13. nc.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
  14. // netConnectionイベント用
  15. function netStatusHandler(event:NetStatusEvent):void {
  16. switch (event.info.code) {
  17. //成功
  18. case "NetConnection.Connect.Success":
  19.  
  20. //ストリームの生成
  21. //var stream:NetStream=new NetStream(nc);
  22. //stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
  23. //stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
  24.  
  25. //ビデオの生成
  26. //var video:Video=new Video(128,96);
  27. //video.x=56;
  28. //video.y=72;
  29. //addChild(video);
  30. //video.attachNetStream(stream);
  31.  
  32. //ビデオの再生
  33. //stream.play("robo.flv");
  34. break;
  35. //ファイルが見つからない
  36. case "NetStream.Play.StreamNotFound":
  37. //trace("ファイルが見つからない");
  38. break;
  39. }
  40. trace(event.info.code);
  41. }
  42. //セキュリティーエラーイベントの処理
  43. function securityErrorHandler(event:SecurityErrorEvent):void {
  44. trace("セキュリティーエラー ");
  45. }
  46. //同期エラーイベントの処理
  47. function asyncErrorHandler(event:AsyncErrorEvent):void {
  48. trace("同期エラー ");
  49. }
  50. // ioエラー
  51. function ioErrorHandler(event:AsyncErrorEvent):void {
  52. trace("ioエラー ");
  53. }

投稿者:
J

社内開発で「Flash CS3」+「Adobe AIR」を利用したツールを制作することになりました。
まずは、AIR環境の構築メモ。

■Adobe Integrated Runtime (AIR)インストール
1.Adobe AIR Installerをダウンロード
http://labs.adobe.com/downloads/air.html
※Englishのみのようです

2.ダウンロードしたファイルをダブルクリックしてインストール

■Adobe AIR update Beta 1 for Flash CS3 Professional
1.Adobe AIR update for Flash CS3 Professional をダウンロード
http://labs.adobe.com/wiki/index.php/AIR:Flash_CS3_Professional_Update
※win, macがあります、Japaneaseをダウンロードしましょう

2.ダウンロードしたファイルをダブルクリック
※もちろん「Flash CS3」でないとだめです

早い時期に記事にしているかたがいます、すばらしいです。
http://weblogs.macromedia.com/akamijo/archives/2007/08/adobe_air_updat_1.cfm
この記事の「ベータ1での既知の問題です。」はよく読んでおくと良いです。

以上。

投稿者:
J