bootanimation中のランダム画像再生

JCROMのframeworkに一手間加えて
bootanimation中にランダムな画像を再生できるようにしました。

サンプル動画はこちら

ソースはこのへん。
https://bitbucket.org/iqm/android_gnexus_frameworks_base/changeset/1b78cd4cdd6f

なにやってん

bootanimation.zipのdesc.txtを読み込みロジックに、ランダム用の命令を追加しました。
つまりこの方法ではframeworkの書き換えと共に、ランダム命令が追加されたbootanimation.zipが必要となります。

追加した命令
r count pause path ...

r: ランダム命令用の識別子
count(int): loop数(従来のp命令と同様)
pause(int): Wait時間(従来のp命令と同様)
path(string): ランダムに再生させたいリソースの入ったディレクトリ名をスペース区切りで

例: desc.txt
720 1280 48
p 1 0 start
r 1 0 rock paper scissors
p 1 0 end

この書き方では、
まず"start"の中身が再生され、
次に"rock","paper","sissors"の中のどれか一つが再生され
最後に"end"が再生されることになります。

言い訳

bootanimation自体を複数用意する手もあるのですが、
容量食うし、そもそも差し替えたいのは一部だけだった、
あと中身みたらこっちのほうが簡単そうだったのでこんな感じの実装に。

その他

スムーズにアニメーションをさせるノウハウとか、
再生終わるまで起動させない方法*1とかご存知の方がいたら俺得なので教えてください( ・`д・´)

追記[2012/04/11]

結局、bootanimationを複数用意してランダムに再生する機能も追加しました
http://d.hatena.ne.jp/iqm/20120410#p1

追記[2012/07/18]

JB(android 4.1.1)においてdesc.txtの仕様が一部変更されたため、それへ対応しました
http://d.hatena.ne.jp/iqm/20120718#p1

*1:JBで対応されました

わあいOpenFlow あかりOpenFlow大好き

アキバでOpenWRT対応のLinksys WRT54Gを探しまわって早2年。
いつまでも見つからないので正直諦め気味だったのだけど、ここにきて妙な動きが。

OpenFlow 1.0 for OpenWRT 動作確認機種報告(2012/03/03) - @SRCHACK.ORG(えす・あーる・しー・はっく)
!?

早速、アキバのつくもたんでIYH!

\1,980安いね!

導入

@SRCHACKさんの作成された導入手順pdf見ながら、さくっと。
(ブリッジ接続のVMがあるとIPアドレスの変更とか楽かも)

接続テスト

$ sudo ./trema run ./src/examples/switch_info/switch_info.rb 
datapath_id: 0x2320e64f65
transaction_id: 0x7cf20001
n_buffers: 256
n_tables: 2
capabilities: 199
actions: 3839
ports: 1, 2, 3, 4, 65534

datapath_idは指定した覚えがないけど
なんか、tap0のMACっぽい


一家に一台、OpenFlowスイッチの時代が来たね!来たね!

crucial CT064M4SSD2

MSD-S6035032NAさん*1が二年の時を経て死去なされたのでSSDを新調
ドスパラで8680円也。


ファームを009にあげて軽くベンチ

-----------------------------------------------------------------------
CrystalDiskMark 3.0.1 x64 (C) 2007-2010 hiyohiyo
                           Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]

           Sequential Read :   221.125 MB/s
          Sequential Write :   115.215 MB/s
         Random Read 512KB :   193.374 MB/s
        Random Write 512KB :   115.645 MB/s
    Random Read 4KB (QD=1) :    19.734 MB/s [  4817.8 IOPS]
   Random Write 4KB (QD=1) :    60.260 MB/s [ 14712.0 IOPS]
   Random Read 4KB (QD=32) :    26.085 MB/s [  6368.4 IOPS]
  Random Write 4KB (QD=32) :    73.562 MB/s [ 17959.4 IOPS]

  Test : 1000 MB [C: 25.3% (15.0/59.5 GB)] (x5)
  Date : 2011/08/28 16:29:54
    OS : Windows Server 2008 R2 Enterprise Edition (Full installation) SP1 [6.1 Build 7601] (x64)
  

はえぇ・・・
6GbpsSATAのM/B買うべきかも

開封の儀

米尼から何かキタ━━━━(゚∀゚)━━━━!!

XOOMさんキタ━━━━(゚∀゚)━━━━!!

では、さっそく・・・
・・・
・・

少し大きめの文鎮が上手にできましたorz


ロゴすら表示されない完璧な文鎮だYO!

akb48.comにアクセスするとけいおん!の公式Webサイトに飛ばされる?

最初、DNSのレスポンスを変更しているのだと思ってたら
URLがドメイン直下じゃなかったので
気になって叩いてみた

GET / HTTP/1.1
Host: akb48.com

HTTP/1.1 302 Found
Date: Thu, 10 Feb 2011 15:31:18 GMT
Server: Apache
Location: http://www.tbs.co.jp/anime/k-on/
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1

d4 
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<HTML><HEAD>
<TITLE>302 Found</TITLE>
</HEAD><BODY>
<H1>Found</H1>
The document has moved <A HREF="http://www.tbs.co.jp/anime/k-on/">here</A>.<P>
</BODY></HTML>

0

というわけで、302を返していただけのよーです

WiresharkでTLSのサーバ証明書に含まれる公開鍵をげっつ

俺得メモ

Client Hello
Server Hello,
Certificate, Server Hello Done
- Secure socket Layer
 - TLSv1 Record Layer
  - Handshake Protocol: Certificate
   - Certificates
    + Certificate(id-atうんぬん)←これを右クリックして保存
     - signedCertificate
      -subjectPublicKeyInfo
       subjectPublicKey:XXX←これ余計なヘッダがついてる
    + Certificate(id-atうんぬん)
% openssl x509 -in hoge.bin -inform DER -text -noout

(゚д゚)ウマー

Windows ServerでAdvanced Formatのツールを使う

本当はLinuxで使うつもりだったのでWD20EADS買うつもりだったのに、安さに釣られてついWD20EARS買ったんですよ。
まぁ、ヒトバシラー的なノリで

こいつは

Advanced Format Technology採用モデルなので、Windows7以外で使う場合にはツールでパーティションを調整し直す必要があるわけです。
しかし買ってからあることに気が付いた。
フォーマットツールが何故か2003に対応してない・・・ッ!
というか、ここにある対応OS持ってないので使えない・・・
Windows 32 bit OS: WD Align System Utility - Powered by Paragon

ブータブル版もあったので

焼いてさっそく試したわけです
が、何故か途中で失敗しちゃうの('A`)
WD Align CD - Powered by Acronis

もうこれは彼の出番ですね

ごにょってWindows用フォーマットツールのインストールに再挑戦。
Orcaでフォーマットツールのmsiを開き
Propety→VersionWindowsの値に

"Windows 7";"Windows Vista=Business, Enterprise, Home Basic, Home Premium, Starter, Ultimate, Undefined";"Windows XP=Home, Professional";"Windows Server 2003=Standard";

ってな感じに自分の持っているWindows Serverのセクションを追加。
これだけでインストールが可能になるます。


一応、インストール/動作は出来ているみたいだけど、正常に動いているのかどうかはよくわかんにゃい。。。