Saqoosha

  1. About
  2. Archives
  3. Search
  4. Say
Language:

2009 年

2009 年は FLARToolKit の年でしたなあ、まったく。

2008 年 5 月にいちおうリリースしてた FLARToolKit が 2009 年のうちの年賀サイトでようやくデビューしたと思えば、いきなり North Kingdom 制作のサイトで使われて世界中に知られたり、あー、Adobe MAX Japan で FLAR デモしたのは 1 月だったっけか(そんときに @soundkitchen と知り合ったんだなー)、そのころぐらいから英語しゃべるつーのを以前より意識しだしたりとかして、でも FITC んときは結局日本語プレゼンだったけどまー海外の Flash イベントに日本代表とかって形で話す機会をもらえたのはほんと光栄だったなーとか、あーそのまえにあの DESIGN SHOWCASE のために @ga4 くんと作った作品も FLAR 使ったよなーとか、67 で FLARToolKit のワークショップもやったりとか、GE のサイトつくったスウェーデンのフリーランス Flasher が日本来るついでに会おうとかってこれも英語たいへんだったりとか、初めて仕事で使ったのは adidas でしたねー Web じゃなかったけどおもしろかったなーとか、そうそうせっかく TED に取り上げられたとおもったらなんかパクり疑惑?みたいで結構大問題になったりとか、ついに日本での FLARToolKit ライセンスの代理店ができて買いやすくなったりとか、Desktop Fireworksテレビに一瞬登場したりとか、ついに本家の Adobe MAX で FLARToolKit のセッションを持てたりとか、dotFes でも Adobe CS 組とかって一枠しゃべらせてもらったりとか、そしてそして .fla2 っていう本も書いたりとか、Infinity Ventures Summit とかっていう IT 企業の社長ばっかの会によばれたりとか、今年最後にやった仕事は一周回ってもっかい AR 年賀状っていうのもほんと感慨深かったりとか、AR 三兄弟が FLAR で NHK の生放送用のシステム作ったのはほんとにびっくり嬉しかったり、ほんとにほんとにいっぱいいっぱい、FLARToolKit きっかけでいろんなことがありすぎた。1 月の Adobe MAX 用にと思って作った 300 枚の Saqoosha 名刺が全部なくなっちゃったもんね。

来年はこのたくさんの出会いとチャンスをちゃんと次に生かせるように、けど、マイペースにこれまでどおり興味の赴くままに作り続けたいと思っておりますよ。とりあえず来年の年賀サイトは今年のほど話題になるとは思わないけどそれなりに気合い入れて作ったので楽しんでくださいまし。

ギリ 2009 年中に今年のまとめかけた。よかた。

んじゃ!!

1000 万パケットで何分間 Ustream できるのか。

もいっちょ Ustream ネタ。iPhone から Ustream できるようになったのはちょーおもしろいんだけど、ソフトバンクはこないだ通信速度を制限しはじめたですよね、月間 1000 万パケット超えるひとだけみたいだけど。んじゃあ、何分やったら 1000 万パケットになんの?ってのがちょっと気になったので計算してみた。テストに使ったのはこないだ帰り道生中継したときのデータ。サイズは 176 x 146 の小さいほう。ごにょごにょして FLV をぶっこぬいた。

再生時間 (秒) 695 sec
再生時間 (分) 11.6 min
転送データ量 10,695,104 bytes
128 bytes/packet
トータルパケット数 83,555.5 packet
1分あたりのパケット数 7,213.4 packet/min
月間1000万パケット制限 10,000,000 packet/month
分にすると 1,386.3 min/month
時間にすると 23.1 hour/month

ふむ。計算があっていれば、23 時間で 1000 万パケット超える。まー、そのまえにバッテリーが切れるな。 Ust だけでこれなので他にもいっぱいつかうひとだったら危険かも。

Ustream Flash Client API で IRC してみる

こないだのてら子では中継に初めてニコ生を使ってみたんだけど、初めてすぎて途中でいろいろめんどくなっちゃって Ustream に切り替えちゃった。お金もかかるしねー。まーでもあのコメントがだーって流れるのはそれはそれでおもしろい。で、前にもそんあことを思ったことがあって、Ustream のチャットをニコニコ風にオーバーレイして流すニコニコ Ustream ってのを作ったことがありました。(わー、2 年も前だわw。超絶おもしろかったなあ)そんときは、Ustream のプレイヤー swf から FMS とのやりとりをこっそり拝見させていただきまして、ストリームをぶっこぬいてたのですが、まー、そんな手がいつまでも使えるわけもなく、まったく動作しなくなっておりました。んで、最近 @hoehoe 氏のブログで Ustream Flash Client API とかいうのがあるのを知りまして、じゃー、また作れるやん?ってことでちょっと試したっていう話。実はてら子中に作っていた。前置き長い。

結論から言うと、すげー簡単にできた。大変だったのは API の使い方がわからんというところだ。API ドキュメントがあるんだけど無いに等しい内容でこれだったら FDT とかで SWC 見る方が早い、ってか実はそっちのが正しいみたいな。まー、↓みたいにすれば IRC つながりますので、@hoehoe 氏のやりかたで映像ひっぱってきてのっければニコニコ Ustream 完成ですなー。

package {
    import tv.ustream.irc.Channel;
    import tv.ustream.irc.Chat;
    import tv.ustream.irc.Irc;
    import tv.ustream.tools.DynamicEvent;
 
    import flash.display.Sprite;
    import flash.events.Event;
 
    public class IrcTest extends Sprite {
 
        private var _irc:Irc;
        private var _channel:Channel;
        private var _chat:Chat;
 
        public function IrcTest() {
            _irc = new Irc('username', 'password');
            _irc.addEventListener('connect', _t);
            _irc.addEventListener('connected', _t);
            _irc.addEventListener('ready', _t);
            _irc.addEventListener('motd', _onMotd);
            _irc.addEventListener('createChat', _t);
            _irc.addEventListener('createChannel', _onCreateChannel);
            _irc.addEventListener('disconnected', _t);
            _irc.addEventListener('ioError', _t);
            _irc.addEventListener('securityError', _t);
        }
 
        private function _t(...args):void {
            trace('******', args);
        }
 
        private function _onMotd(e:Event):void {
            _t(e);
            _irc.join('HogeChannel');
        }
 
        private function _onCreateChannel(e:DynamicEvent):void {
            _t(e);
            _channel = e.channel;
            _channel.addEventListener('message', _onMessage);
            _chat = new Chat('#HogeChannel', _irc);
            _chat.send('Uryaaaaaa!!!');
        }
 
        private function _onMessage(e:DynamicEvent):void {
            _t(e.from + ': ' + e.message);
        }
    }
}

この IRC クラス、Ustream だけに使えるとか制限あるわけじゃないので freenode とか別の IRC サーバーにも普通につながる。IRC クラスのコンストラクタの第 3 引数にサーバー名渡すだけ。ライセンスは確認してないけど。

FDT で 1 プロジェクトやってみたわけだが

先日の .fla2 トークイベント来てくれた方、あざっした。で、そのライブコーディングで使っていたのは FDT っていう Flash 開発環境。AS3 になって Flex Builder 使うようになってからはまーたく使ってなかったんだけど、AS2 時代は FDT 以外にまともな AS エディタがなかったから使ってました。最近また FDT の名前をよく聞くようになってきたり、オープンソースライセンスをもらったり、こないだの Adobe MAX で FDT の中の人に会ったり、だったので某プロジェクトを FDT でコーディングしたりしていて、んで、ライブコーディングにも使ってたと。いまんとこメイン開発環境かな。実戦投入してみないとわからないこともいろいろあるわけで、以下、気付いた点とか。購入検討しているひとは参考にどぞ。

よい点。

コードアシスト
まー、FDT つかうのはほぼこのためだっていうぐらい重要なポイントですな。デフォルトだとそんなにアシストしてくんないけれど、ここの Code Assist んとこの設定をするとウザいぐらいアシストしてくれる。ぼかー、Delay 50 でやってる。

Quick Fix
これは言葉で説明するのは大変なので詳細はこっち見てもらうとして、そーんなに頻繁にはつかわないけどトップダウンでコードを作っていくときは結構つかえる。

Refactoring。
リファクタリングつってもそんな高度なもんじゃーない。変数名とか関数名のリネームとかファイル移動したときの関連ファイルの修正とかそんなん。だけど、結構つくってる最中にパッケージ構成変えたり名前変えたりってのはしたくなるので、これがさくっとできるのは便利。ただしファイル名変更いがいのリファクタリング機能は Enterprise 版しかできない。なんだそりゃ。

参照元検索。
このメソッドをちょっと修正しようと思うんだけど、いったいどこから呼ばれてるんだっけ?とかってのが検索できる。変数とかも。割とよくつかう。

Organize Imports。
コードアシストの次に重要なポイントだなー。基本的に AS 書いていくと import 文は自動的に追加されていく(違うパッケージの同名クラスは選択ダイアログが出る)んだけど、てきとうにコピペして他からもってきたコードでも Organize Imports するとほぼ一発で import 文書いてくれる。不要な import 文は削除される。きれいにパッケージ順にソートしてくれる。Flex Builder にも似たような機能あるけどそれより賢い。

・・・

わるい点もいろいろあるんだけど書くの疲れたので軽くリスト。一番大きいのは AIR 開発系が弱いことだなあ。これがだめなせいで結局 Flash Builder が必要になるっていう。Flex Builder の倍ぐらい値段するんだからそのへんも対応してほしい。

わるい点。
・SDK の設定わかりにくい。
・Build 設定いちいちめんどい。
・指定したファイルだけで SWC つくりたい。
・mxlm いじるんはやっぱビジュアルエディタ必要。
・Cocoa 版はスクロールもっさり。Eclipse Cocoa 版がそうみたい。
・Run とか Debug とかの対象がわかりにくい。
・Plugin はいりすぎ。
・バグ多め。
・高い。

・・・

まー、AS エディタとしては素晴らしい環境なのでお金に余裕があるかたはお試しアレ

カラリオからの新提案!「3D年賀状」

2009120701-Colorioar

よくできた AR 年賀サイトですねー。
さーて、これからうちの会社の年賀サイトを作りますよっと、、、