前回はアニメーションPNGのチャンクの並びを紹介しました。
今回は実際のAPNGファイルのチャンク構造を見てみます。
次の画像は実際のAPNGファイルをバイナリエディタで開いた所です。チャンク名を反転してマークしました
![]() |
PNGファイルの先頭部分 |
tEXtチャンクにはコメントが格納されますが、中にAdobeの文字が有ります。実際このPNGファイルはAdobe Illustratorで作成した画像をアニメーションPNGに組み立てた物です。
チャンクはそのチャンクのデータ長を表す4バイトで始まり、4文字のチャンク名、データ部、4バイトのCRCで構成されます。
最初に見えるIHDRチャンクは以下の構造になっています。
- ADDRESS:00000008 - 0000000B
データ部の長さ(0000000D=13バイト) - ADDRESS:0000000B - 0000000F
チャンク名"IHDR" - ADDRESS:00000010 - 0000001C
0Dバイト(10進数で13バイト)のデータ部 - ADDRESS:0000001D - 00000020
CRC
その後に次のチャンクが続いていきます。
この構造のおかげで、ダウンロードの途中でもダウンロード済みのコマ(チャンク)までの再生ができる様になっています。考えた人は賢いですね。
実際の作業としてバイナリエディタでチャンク構造を追いかけるのは大変なので、次回はチャンクを一覧表示する方法を紹介したいと思います。
実際の作業としてバイナリエディタでチャンク構造を追いかけるのは大変なので、次回はチャンクを一覧表示する方法を紹介したいと思います。
アニメーションPNGの中身
- 第1回 PNGはチャンクの集まり
- 第2回 PNGファイルの中身
- 第3回 実ファイルに入っているチャンク
- 第4回 チャンクの一覧表示
0 件のコメント:
コメントを投稿