These pages are written by only Japanese.
|
Namazu for hns による簡易全文検索です。 詳細は 詳細指定/ヘルプをご参照下さい。 |
|||||||||||||||||||||||||||||||||||||||||||||||
addr : 0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0x00000: 4657 5304 900a 0000 7000 0960 0000 9600 FWS p ` 0x00010: 0008 2800 4302 0000 0040 003f 0200 0000 ( C @ ?フォーマットは、
struct swf_header { unsigned char f_magic[3]; 'FWS' or 'CWS' unsigned char f_version; unsigned long f_file_length; }FWS の magic 文字列がきて続く 4 は Flash のバージョン。 その次がファイルサイズで、900a 0000 => 0x00000a90 => 2704
% ls -l foo.swf -rwxr--r-- 1 yoya yama 2704 1月 8 23:10 foo.swfぉぉ。合ってる。(゜∇゜)
struct swf_header_movie { swf_rect f_frame_size; unsigned short fixed f_frame_rate; unsigned short f_frame_count; }; struct swf_rect { char align; unsigned f_size : 5; signed twips f_x_min : f_size; signed twips f_x_max : f_size; signed twips f_y_min : f_size; signed twips f_y_max : f_size; };むー… この swf_rect は、どう解釈すればいいんだろう。
int reader_GetRect(reader_t*reader,SRECT * r) { int nbits; SRECT dummy; if (!r) r = &dummy; nbits = (int) reader_GetBits(reader,5); r->xmin = reader_GetSBits(reader,nbits); r->xmax = reader_GetSBits(reader,nbits); r->ymin = reader_GetSBits(reader,nbits); r->ymax = reader_GetSBits(reader,nbits); return 0; }あー。なるほど。
addr : 0 1 2 3 4 5 6 7 8 9 A B C D E F 0123456789ABCDEF 0x00000: 4657 5304 900a 0000 7000 0960 0000 9600 FWS p ` ~~ 0x00010: 0008 2800 4302 0000 0040 003f 0200 0000 ( C @ ?
70 0111 001110(= 14)bit らしい。更に分解すると、こんな感じ。
70 00 09 60 01110000 00000000 00001001 01100000 <---><-----xmin-----><-----xmax---- align 00 00 96 00 00000000 00000000 10010110 00000.... ><----ymin-----><-----ymax-----> 0008 2800 4302 0000 0040 003f 0200 0000 <--> <--> 8.0 0x28=(40)frames (frame/secs)14 bit ずつ4つ取り出して、次のバイトを読むと ちゃんとそれっぽい値が対応した。 ちなみに、twips は単位で 20 twips が 1 pixel に相当するらしい。 なので、xmax, ymax は各々 0 10010110 00000 = 0x12c0 = 4800 で、20 で割ると 240 。携帯向けサイズぴったし。 ヽ(゜∇゜)ノ
Name Number Type FrameLabel 43 Define Comments Names a frame or anchor. This frame can later be referenced using this name. struct swf_framelabel { swf_tag f_tag; /* 43 */ string f_label; if(version >= 6) { /* optional field */ unsigned short f_flags; } };FrameLabel タグらしいけど、↓この実データと合わないんだよね‥
4302 0000 0040 003f 0200 000043 の後に文字列が続くらしいけど 02 ってASCII文字じゃないし。うーん… (・ω・)
% ./a.out saitama.swf header magic=FWS header version=4 header file_length=0xa90(=2704) movie header alignc=14 movie header x_(min,max) =(0, 4800) movie header y_(min,max) =(0, 4800) movie header frame_rate =8.0 movie header frame_count =0x28(=40) framelabel string= Unknown SWF Tag(0x00)ビットストリーム処理(というか、C 言語自体)久しぶりに書いたけど、 むちゃくちゃだ。リハビリしよ。^^;
AWM.JPの更新手続きのご案内は通常有効期限の2ヶ月前: 4月はじめにご連絡用メールアドレス宛にご連絡させていただきます。毎年更新なので、自分の場合は4月から6月は毎年気が抜けないらしい。
しかし,ページのロードが終了した段階で,たくさんの処理を行ってしまうと, 「ページの読み込みが終わってからJavaScriptの処理のためにページが一瞬固まる」 という現象が発生してしまいます。あるある…
- --[http://www.nicovideo.jp/ ニコニコ動画] + --[http://www.miarakure.com/happy/ ニコニコ動画] - --[http://pukiwiki.sourceforge.jp/ pukiwiki-official] + --[http://www.miarakure.com/happy/]履歴見たら 12/24 にやられてたのか…
<script language="VBScript"> on error resume nextburl_0="http://www.miarakure.com/wiki/lin.exe" burl_0="http://www.miarakure.com/wiki/lin.exe" burl_1="http://www.miarakure.com/wiki/rse.exe" burl_2="http://www.miarakure.com/wiki/ff.exe"lin.exe はリネージュ、ff.exe は FFXI だとして、 rse って何だろ。