「JPEG/マーカー」の版間の差分

imported>Administrator
編集の要約なし
imported>Fallout New Tokyo
編集の要約なし
 
(2人の利用者による、間の7版が非表示)
1行目: 1行目:
'''マーカー'''(英語:maker)とは、JPEGファイルの中に存在する2[[バイト]]の区切りのことである。
[[JPEG]]の'''マーカー'''([[英語]]:maker)とは、JPEGファイルの中に存在する2[[バイト]]の区切りのことである。


== 概要 ==
== 概要 ==
17行目: 17行目:
マーカーは2[[バイト]]も使っているが上位1バイトは「0xFF」固定だったりする。
マーカーは2[[バイト]]も使っているが上位1バイトは「0xFF」固定だったりする。


[[JPEG2000]]やJPEG XRも基本的にはJPEGのファイル構造をベースとしており、新たにマーカーを追加拡張するかたちで実装されている。
[[JPEG]]と互換性のない[[JPEG2000]]も基本的にはJPEGのファイル構造をベースとしており、新たにマーカーを追加拡張するかたちで実装されている。


== マーカーの種類 ==
== マーカーの種類 ==
JPEGを標準化した標準化団体の[[ITU-T]]は何でもかんでも[[3文字アルファベット]]で表記する決まりがあるため、それぞれのマーカーには[[3文字アルファベット]](+数字の場合もある)が割り当てられている。
[[JPEG]]を標準化した標準化団体の[[ITU-T]]は何でもかんでも[[3文字アルファベット]]で表記する決まりがあるため、それぞれのマーカーには[[3文字アルファベット]](+数字の場合もある)が割り当てられている。


{| class="wikitable" style="width:100%; font-family:monospace"
{| class="wikitable" style="width:100%; font-family:monospace"
30行目: 30行目:
| 0xFF, 0xC0
| 0xFF, 0xC0
| [[JPEG/マーカー/SOF0|SOF0]]
| [[JPEG/マーカー/SOF0|SOF0]]
| 基本処理 DCT 処理のフレーム開始マーカー
| 基本処理 DCT 処理のフレーム開始マーカー。一般的なJPEGはこれ。
|-
|-
| 0xFF, 0xC1
| 0xFF, 0xC1
38行目: 38行目:
| 0xFF, 0xC2
| 0xFF, 0xC2
| [[JPEG/マーカー/SOF2|SOF2]]
| [[JPEG/マーカー/SOF2|SOF2]]
| 段階 DCT のフレーム開始マーカー、ハフマン符号処理
| 段階 DCT のフレーム開始マーカー、ハフマン符号処理。一般的には[[プログレッシブJPEG]]として知られている。
|-
|-
| 0xFF, 0xC3
| 0xFF, 0xC3
| [[JPEG/マーカー/SOF3|SOF3]]
| [[JPEG/マーカー/SOF3|SOF3]]
| 可逆処理 のフレーム開始マーカー、ハフマン符号処理
| 可逆処理 のフレーム開始マーカー、ハフマン符号処理。[[DICOM]]などに多い。
|-
|-
| 0xFF, 0xC5
| 0xFF, 0xC5
123行目: 123行目:
| [[JPEG/マーカーRSTm|RST7]]
| [[JPEG/マーカーRSTm|RST7]]
| リスタートインターバルの7番マーカー
| リスタートインターバルの7番マーカー
|-  
|-  
| 0xFF, 0xD8
| 0xFF, 0xD8
| SOI
| [[JPEG/マーカー/SOI|SOI]]
| ファイルの始まりを示すマーカー
| ファイルの始まりを示すマーカー
|-
|-
| 0xFF, 0xD9
| 0xFF, 0xD9
| EOI
| [[JPEG/マーカー/EOI|EOI]]
| ファイルの終わりを示すマーカー
| ファイルの終わりを示すマーカー
|-
|-
| 0xFF, 0xDA
| 0xFF, 0xDA
| SOS
| [[JPEG/マーカー/SOS|SOS]]
| 画像データ本体の始まりを示すマーカー
| 画像データ本体の始まりを示すマーカー
|-
|-
| 0xFF, 0xDB
| 0xFF, 0xDB
| DQT
| [[JPEG/マーカー/DQT|DQT]]
| 量子化表の定義マーカー
| 量子化表の定義マーカー
|-
|-
| 0xFF, 0xDC
| 0xFF, 0xDC
| DNL
| [[JPEG/マーカー/DNL|DNL]]
| 行数を定義するマーカー
| 行数を定義するマーカー
|-
|-
| 0xFF, 0xDD
| 0xFF, 0xDD
| DRI
| [[JPEG/マーカー/DRI|DRI]]
| [[JPEG/リスタートインターバル|リスタートインターバル]]が出現する[[JPEG/MCU|MCU]]間隔を定義するマーカー
| [[JPEG/リスタートインターバル|リスタートインターバル]]が出現する[[JPEG/MCU|MCU]]間隔を定義するマーカー
|-
|-
| 0xFF, 0xDE
| 0xFF, 0xDE
| DHP
| [[JPEG/マーカー/DHP|DHP]]
| 階層化モード時(動画)のキーフレーム(非差分フレーム)を示すマーカー?
| 階層化モード時(動画)のキーフレーム(非差分フレーム)を示すマーカー?
|-
|-
| 0xFF, 0xDF
| 0xFF, 0xDF
| EXP
| [[JPEG/マーカー/EXP|EXP]]
| 階層化モード時(動画)の拡張参照成分(差分フレーム)を示すマーカー?
| 階層化モード時(動画)の拡張参照成分(差分フレーム)を示すマーカー?
|-
|-
163行目: 162行目:
| 0xFF, 0xE1
| 0xFF, 0xE1
| APP1
| APP1
| アプリケーションが自由に使える領域を示すマーカー
| アプリケーションが自由に使える領域を示すマーカー、[[Exif]]はここに入れる決まりになっている。APP0やAPP2に入れちゃダメよ。
|-
|-
| 0xFF, 0xE2
| 0xFF, 0xE2
278行目: 277行目:
|-
|-
| 0xFF, 0xFE
| 0xFF, 0xFE
| COM
| [[JPEG/マーカー/COM|COM]]
| コメントを示すマーカー
| コメントを示すマーカー
|-
|-
| 0xFF, 0x01
| 0xFF, 0x01
| TEM
| [[JPEG/マーカー/TEM|TEM]]
| 算術符号処理での一時的な補助に用いるマーカー
| 算術符号処理での一時的な補助に用いるマーカー
|-
| 0xFF, 0xFF
| NOP
| 穴埋めマーカー、無視せよ
|}
|}
{{stub}}
 
== 主な構造 ==
* 0xFF, 0xD8(SOIマーカー、ファイルの始まり)
** 0xFF, 0xE1(APP1マーカー、Exifが入ってる)
** 0xFF, 0xC4(DHTマーカー)
** 0xFF, 0xDB(DQTマーカー)
** 0xFF, 0xC0(SOF0マーカー)
** 0xFF, 0xDA(SOSマーカー)
*** (画像データ)
* 0xFF, 0xD9(EOFマーカー、ファイルの終わり)


== 関連項目 ==
== 関連項目 ==