超小型Wi-Fiカメラ CS-W07G-CY (iOS / Android)

超小型Wi-Fiカメラ CS-W07G-CYを買ったので色々調べたのでメモ。

—-
CS-W07G-CY」は、持ち運びに便利なバッテリ駆動型の世界最小クラス超小型Wi-Fiカメラです。
WEBブラウザでネットワークカメラのURLを指定するだけでリアルタイムでのモニタリングが可能です。
iPhone/Androidアプリを使用することでインターネットを介さずに撮影している映像を簡単に閲覧することもできます。
—-

画像映像の取得方法

静止画取得

http://192.168.2.1/?action=snapshot

映像画取得(MotionJPEG)

http://192.168.2.1/?action=stream

※画像のサイズ指定のパラメータは不明。

HTMLにMotionJPEGを表示する方法

iOSの Mobile Safari や UIWebVew ならimgタグでMotionJPEGを表示することができる。

<img src="http://192.168.2.1/?action=stream">

HTML5のCanvasへのMotionJPEGの表示

JavaScript で Image オブジェくを作りタイマーでcanvasに画像を1コマづつ描画
ソースコード(iOSでの動作確認済み)
Canvas上でグレースケール変換の処理を入れてみたけど処理に時間がかかりすぎてコマ落ち。

var Page = function(config){
    this._config = config;
    this._img_camera;

    this.init = function(){
        //MotionJPEGを読み込む
        this._img_camera = new Image();
        this._img_camera.onload = $.proxy(this.onLoadCameraImg,this);
        this._img_camera.src    = "http://192.168.2.1/?action=stream";
    };

    //MotionJPEGのロードが完了
    this.onLoadCameraImg = function(){
        //描画タイマー開始
        $.timer(this._config.draw_msec,$.proxy(this.draw,this));
    };

    //描画
    this.draw = function(t){
        var canvas = $("#img_camera_canvas")[0];
        var ctx = canvas.getContext("2d");
        ctx.drawImage(this._img_camera,0,0);
    };
};

var page = new Page(new Config());
$(document).ready(function() {
    page.init();
});

参考サイト

電池で動くWi-FiカメラCS-W07G-CY(やっと)到着[花岡ちゃんに花束を]

Posted in Android, iOS | Leave a comment

[移植] JavaScriptでレーダーチャートを描画するRaphael Radarをクラス化

こちら[JavaScriptでSVGのレーダーチャートを描画するライブラリ Raphael Radar をつくった] で公開されている ライブラリ Raphael Radar をクラス化してみました。

>設置サンプル
http://tf-web.jp/back/blog/raphael-radar/sample.html

〜
    <script type="text/javascript" charset="utf-8" src="scripts/jquery-1.5.2.min.js"></script>
    <script type="text/javascript" charset="utf-8" src="scripts/raphael-1.3.1.min.js" ></script>
    <script type="text/javascript" charset="utf-8" src="scripts/jquery.raphael-radar-0.0.0.js"></script>
〜
    <div id="chart" style="float:left;"></div>
〜
    <script type="text/javascript">
      scores = [255,128,128,100,200];
      labels = ["うんのよさ", "たいりょく", "ちから", "かしこさ", "すばやさ"];
      ids    = ["l", "s", "p", "c", "q"];

      var rr = new RaphaelRadar();
      rr.radar( "chart", 250, 250, scores, labels, null, 256);
    </script>

>ソースコード一式
20110502v1_raphael-radar.zip

>不具合修正箇所
Raphael.fn.radarchart 内

    // Regularises scores
    //for( var i = 0; i < scores.length; i++){ scores[i] /= max}
    //score 引数をつかってなかった 不具合
    for( var i = 0; i < score.length; i++){ score[i] /= max}

>参考サイト
JavaScriptでSVGのレーダーチャートを描画するライブラリ Raphael Radar をつくった

Posted in javascript, いろいろ | Leave a comment

[Android] HTC ExtUSB 11 Pin USB Connector with Breakout 取り寄せ方法

HTC ExtUSB 11 Pin USB Connector with Breakout を日本語のサイトから購入
sparkfunが扱っている製品なのでスイッチサイエンスさんで取り寄せ可能でした。
日本語のやり取りで安心して取引できるのは便利かも。スイッチサイエンスさんに感謝。

—–
商品コード:sparkfn PRT-09167
商品名 :HTC ExtUSB 11 Pin USB Connector with Breakout
個数 : 3個
お取り寄せ価格 :@1,149円(税込み)
送料 : 無料(かさ張る商品ではないため)
—–
価格は時価だと思うので、取り寄せる時に確認する事。

参考サイト
スイッチサイエンス
– お問合せから SparkFun社 の型番と個数を伝えて取り寄せ

>twitter
昨日書いたメモblogの内容で絡まれたけど、上から目線の変な人だったのでブロックした。
相手の気持がわからないようなツイートする人って空気よめない系でリアルでも同じなんだろうなー。
ブロック機能を初めてbot以外に使った気がする

Posted in Android | Leave a comment

Android HT-03A(HTC Magic)でSerial Portsを動かす方法

Android HT-03A(HTC Magic)でSerial Portsを動かす方法のメモ書き
カーネルの差し替えが必要なので、自己責任でお願いします。

>情報元
android-serialport-api

必要な事
- PCに android sdk ,NDK をインストール
- PCにfastbootをインストール
- ルート権限を取得
- HBOOTの差し替え
- カーネルの差し替え
- Serial enabled kernelを fastbootコマンドで適用
- SerialPort_0.7.apk を動作確認の為インストール

>PCに Eclipse,android sdk ,NDK をインストール
Eclipseを検索して適当なサイトからダウンロードしてインストール.
EclipseにADTをインストール。
NDKをインストールしてパスを通す。

- 参考サイト

http://www.saturn.dti.ne.jp/~npaka/android/HelloWorld/index.html

>PCにfastbootをインストール
HTC Developer Center から fastbootをダウンロードして適当な場所に設置。パスも通す.

http://developer.htc.com/adp.html

>Ht-03Aのルート権限を取得
setupsuを適当なサイトからダウンロードしてインストール

>HBOOTの差し替え
HBOOTのバージョンが古いままだとfastbootコマンドが正常に動かないので差し替える.
update.Engineering-SPL-HBOOT-1.33.2005-signed.zip だと正常に動いたので
ファイル名でネットを検索して導入

>カーネルの差し替え
CyanogenMod-4.1.999をダウンロードして適用する
(CyanogenMod 5.0.7のカーネルだとSerial Portsがうまく動かなくて3日ほど悩んだ・・・)
- HTC_ADP_1.6_DRC83_rooted_base.zip
- update-cm-4.1.9999-signed.zip

>Serial enabled kernelを fastbootコマンドで適用
boot_2.6.29.6-cm42_v2.img.tar.gz ダウンロードして展開
HT-03Aをfastbootモードで起動してUSBを繋いで下のコマンドでPCからboot.imgを書き換える
fastboot boot boot_2.6.29.6-cm42_v2.img

- 参考サイト

http://juggly.cn/archives/363.html

http://code.google.com/p/cyanogen-updater/

>SerialPort_0.7.apk を動作確認の為インストール
android-serialport-api で配布されている動作確認用のアプリ
SerialPort_0.7をインストールする。

http://code.google.com/p/android-serialport-api/downloads/detail?name=SerialPort_0.7.apk

>SerialPort_0.7.apkを実行
/dev/ttyMSM2 でシリアルポートがアクセスできるので
SerialPort_0.7のSetupボタンで表示される Deviceに設定する
- Setup 画面
Device /dev/ttyMSM2
Baud rate 9600

-Console画面
アラートが表示されなければシリアルポートが動作している。
Receptionは受信したデータを表示(未確認)
emissionに英数字を入力すると送信(未確認)

>その他メモ
ちゃんと動作確認するには extUSB to Serialのケーブルが必要なので作る必要がある。
- ロジックレベル変換モジュール

http://www.switch-science.com/products/detail.php?product_id=46

- HTC ExtUSB 11 Pin USB Connector with Breakout

http://www.sparkfun.com/products/9167

(スイッチサイエンスさんに取り寄せられるか確認中。
取り寄せ出来なかったら適当なextUSBのコネクタ壊して自作)

Posted in Android, いろいろ | Leave a comment

FCrackZip | macでZIPパスワード解析・分析(コマンドライン) (2)

macでZIPパスワード解析(コマンドライン) をつづけて調べていたら
MacPortsでインストールできる FCrackZip ツールがみつかったのでメモ

>インストール方法

$sudo port install fcrackzip

>使い方

fcrackzip test.zip

パスワード解析に時間がかかるようですが、インストールが手軽でおすすめです。

>参考
- How to Recover a ZIP Password in Linux
- MacPortsでステキなUNIXツールをインストール[はこべにっき#]

Posted in 未分類 | Leave a comment

macでZIPパスワード解析(コマンドライン) (1)

macでZIPパスワード解析(コマンドライン) するツールを調べてみた。

Linux向けのrarパスワード解析ツールrarcrack 2.0のソースコードを持ってきて、ちょっと修正してmakeすると一応、動いたのでメモ。

>ソースコード
rarcrack 2.0 からrarcrack-0.2.tar.bz2をダウンロード

>ソースコードの修正
展開したソースコードをそのままmakeすると”Segmentation fault”エラーでパスワード解析が停止するので
rarcrack 2.0trackerに書いてあった修正をする。

Same issue in UBUNTU:
Solution: delete/comment line 326 in rarcrack.c:
326: printf("INFO: detected file type: %s\n", TYPE[archive_type]);

rarcrack.c の 326行目をコメントアウト

>make
makeコマンドでメイク。warningが出るけど気にしない。

$ make
gcc -pthread rarcrack.c `xml2-config --libs --cflags` -O2 -o rarcrack
rarcrack.c: In function ‘init’:
rarcrack.c:285: warning: format ‘%s’ expects type ‘char *’, but argument 3 has type ‘char (*)[300]’

>テスト
rarcrack-0.2.tar.bz2 に入っていたサンプル test.zip でテスト

$ ./rarcrack test.zip --type zip
RarCrack! 0.2 by David Zoltan Kedves (kedazo@gmail.com)

INFO: the specified archive type: zip
INFO: cracking test.zip, status file: test.zip.xml
INFO: Resuming cracking from password: 'Re'
Probing: '0a3' [385 pwds/sec]
Probing: '0sd' [375 pwds/sec]
Probing: '0KU' [386 pwds/sec]
GOOD: password cracked: '100'

>注意
rarcrack の コマンドライン引数の順番とか設定を変更すると “Segmentation fault” エラーがまだ出ます。
私の環境で “Segmentation fault” エラーが出にくい引数は下でした。

./rarcrack [ファイル名] --type [zip|7z|rar] --threads 4

>参考サイト
- LinuxTIPS – zipファイルのパスワードを解析する[m120's Blog]
- rarcrack e segmentation fault [Forum Ubuntu-it]
- rarcrack 2.0

Posted in mac, いろいろ | Leave a comment

[MTプラグイン] TfMultiFileUploader – 複数ファイルをアップロード&拡大縮小(画像)できるようになるMovable Type Pluginを作ってみた

TfMultiFileUploader – 複数ファイルをアップロードするMTプラグインを作ってみた。

通常のファイルアップロードフォームを拡張して jquery.MultiFileを使って
複数ファイルを指定できるようにしたプラグインです。
画像をアップロードする場合、拡大縮小もついでにおこないます。

アップロードされたファイルは、通常のアイテム→一覧に追加されるので
blogエントリー等で、そのまま使用できます。

>プラグイン一式
101110v1_TfMultiFileUploader.zip

>使い方
1.ダウンロードした zipファイルを展開して plugins,mt-staticをサーバへ転送する
2.管理画面へログインする
3.アイテム → TfMultiFileUploader を選択。

>画面

>設定項目

resize_type
リサイズ指定する種類を選択
scale
リサイズするスケールを指定する
width x height
リサイズする幅と高さを指定する(どちらか片方を0に設定すると比率を維持)
quality
圧縮する際の画質品質をしていする 0〜100まで指定
Posted in MT | Leave a comment

[MT5プラグイン] TfCommentRating – コメントに評価をつけられるようになる Movable Type Pluginsを作ってみた

TfCommentRating コメントに評価をつけられるようになる Movable Type Pluginsを作ってみた。
まだドキュメントを整理してないので、使いにくいと思うけど公開。
(そのうち整理してMTプラグインディレクトリにアップする予定ー)

久々にMTプラグインを作ったので この本(Movable Typeプラグイン開発入門)が非常に役に立ちました。MTのプラグインを開発者する方は持っておくといい本だと思います。

>ソース一式
101026v1_TfCommentRating.zip

>設置サンプル
TfCommentRatingプラグイン
コメント欄の “いいね!” リンクをクリックすると 右の数値が加算されます。

>使い方
1.ダウンロードした zipファイルを展開して plugins,mt-staticをサーバへ転送する

2.MTへログインすると TfCommentRating プラグインの設定が始まります。

3.テンプレート『HTMLヘッダー』に下記のコードを追加

<!-- TfCommentRatingプラグイン tf-web.jp -->
<script type="text/javascript" charat="UTF-8" src="<$MTStaticWebPath$>"jquery/jquery.js"></script>
<script type="text/javascript" charat="UTF-8" src="<$MTStaticWebPath$>"plugins/TfCommentRating/mt-tfcomment_rating.js"></script>

4.テンプレート『コメント詳細』に下記のコードを追加分

<a href="javascript:void(0);" onclick="<$MTTfCommentRatingOnclickJS point='1'$>"">いいね!</a> (<$MTTfCommentRatingTotalPoint$>)

>参考サイト
MTPlugin-Starter
– MTプラグインの雛形を作るスクリプト

エムロジック株式会社
Movable Typeプラグイン開発入門と MTPlugin-Starterを作った会社。感謝

Posted in MT, いろいろ | 1 Comment

[iOS開発] iPhoneのSafaliを退去するコード (Software Design)

Software Design (ソフトウェア デザイン) 2010年 10月号 [雑誌]にのっていたiPhoneの常駐しているSafaliを退去するコードを試してみました。

常駐するソフトが増えると画面回転のイベントがうまく動作しないアプリに組み込んだ所、効果があったらしく、アプリを大量に常駐していても正常に動作するようになりました。Software Designさんに感謝。

>原理
1.iOSはタスクに乗っているアプリを管理している
メモリが足りなくなった場合、OSがアプリに対して終了処理を適時行う。
2.自分で作成したアプリの起動時に大きめのメモリを確保して即時開放。
ほかのタスクにあるアプリを退去するように促す。
3.メモリが確保された状態で作成したアプリが動く筈。

>コード

+(void) clearMemory:(size_t)mb{
	size_t i,size,len;
	long *pp,*pp1;
	size = 1024L*1024L*mb;
	if(pp=malloc(size)){
		pp1=pp;
		len = size >> 2;
		for(i=0;i≶len;i++){
			*pp1++=0;
		}
		free(pp);
	}
}
[MemoryUtil clearMemory:20L];

>ダウンロード
101004v1_MemoryUtil.zip

>参考サイト
Software Design (ソフトウェア デザイン) 2010年 10月号 [雑誌]

Software Design2010年10月号
– 技術評論社
特定非営利活動法人MOSA
– SDのこの記事の著者さんが会長のソフト開発者サポートNPO団体。

Posted in iOS | Leave a comment

HTC extUSB TV Out cable

HTC extUSB メモ

TV Out cable for HTC incredible?

A standard porting for the pin-outs is as such:
1 USB VCC +5v
2 USB Data -
3 USB Data +
4 N / C
5 USB GND
6 Left Audio +
7 Sense / Video
8 Audio – (GND)
9 Switch (Talk)
10 Right Audio +
11 Mic +
12 Chassis Ground (GND)

Posted in 未分類 | Leave a comment