jpeg结构分析工具 vivo的特殊的照片jpg文件格式 2

20251118_213605

 

 

- **p=**: 段在文件中的位置(十六进制)
- **d=**: 与前一段之间的字节差距
- **m=**: JPEG标记(十六进制)
- **l=**: 数据长度
- **e=**: 熵值(数据随机性度量)
- **a=**: 连续字节差异平均值
 
 

 

python jpegdump.py -f -c -e .\IMG_20251001_172433.jpg
File: .\IMG_20251001_172433.jpg          内含4张图(说明关掉水印,那张小的有水印的那块位置的恢复图就没了)
Found SOI:
  1 p=0x00000000    : m=ffd8 SOI
  2 p=0x00000002 d=0: m=ffe1 APP1  l=51596 e=2.114622 a=14.244743
  3 p=0x0000c990 d=0: m=ffe6 APP6  l=  539 e=4.919570 a=18.949627
  4 p=0x0000cbad d=0: m=ffe2 APP2  l=  564 e=4.070801 a=35.837790
  5 p=0x0000cde3 d=0: m=ffe5 APP5  l=65406 e=0.012234 a=0.067107
  6 p=0x0001cd63 d=0: m=ffe6 APP6  l=65406 e=0.000000 a=0.000000
  7 p=0x0002cce3 d=0: m=ffe7 APP7  l=65406 e=0.000000 a=0.000000
  8 p=0x0003cc63 d=0: m=ffe8 APP8  l=65406 e=0.000000 a=0.000000
  9 p=0x0004cbe3 d=0: m=ffe9 APP9  l=65406 e=3.679414 a=46.448435
 10 p=0x0005cb63 d=0: m=ffe9 APP9  l=65406 e=4.392761 a=87.458465
 11 p=0x0006cae3 d=0: m=ffea APP10 l=65406 e=1.685760 a=15.264774
 12 p=0x0007ca63 d=0: m=ffea APP10 l=65406 e=0.000000 a=0.000000
 13 p=0x0008c9e3 d=0: m=ffeb APP11 l=65406 e=0.485698 a=1.973610
 14 p=0x0009c963 d=0: m=ffdb DQT   l=   67 e=3.255574 a=0.828125 remark: 65/65 = 1.000000
 15 p=0x0009c9a8 d=0: m=ffdb DQT   l=   67 e=1.350020 a=0.265625 remark: 65/65 = 1.000000
 16 p=0x0009c9ed d=0: m=ffc0 SOF0  l=   17 e=3.323231 a=76.357143 remark: p=8 h=4080 w=3060 c=3
 17 p=0x0009ca00 d=0: m=ffc4 DHT   l=   31 e=2.815937 a=0.750000
 18 p=0x0009ca21 d=0: m=ffc4 DHT   l=  181 e=7.270047 a=13.168539
 19 p=0x0009cad8 d=0: m=ffc4 DHT   l=   31 e=2.799180 a=0.642857
 20 p=0x0009caf9 d=0: m=ffc4 DHT   l=  181 e=7.243483 a=18.140449
 21 p=0x0009cbb0 d=0: m=ffda SOS   l=   12 e=2.446439 a=21.222222 remark: c=3
                                  entropy-coded data: l=5606778 e=7.931394 a=89.022752 #ff00=27456
 22 p=0x005f5938 d=0: m=ffd9 EOI
Found SOI:
  1 p=0x00000710    : m=ffd8 SOI
  2 p=0x00000712 d=0: m=ffe0 APP0  l=   16 e=1.985228 a=6.615385
  3 p=0x00000724 d=0: m=ffdb DQT   l=   67 e=4.506929 a=2.781250 remark: 65/65 = 1.000000
  4 p=0x00000769 d=0: m=ffdb DQT   l=   67 e=1.375467 a=1.078125 remark: 65/65 = 1.000000
  5 p=0x000007ae d=0: m=ffc0 SOF0  l=   17 e=3.006239 a=57.928571 remark: p=8 h=192 w=144 c=3 JPEG 的基础块就是 8×8 DCT block
  6 p=0x000007c1 d=0: m=ffc4 DHT   l=   31 e=2.815937 a=0.750000
  7 p=0x000007e2 d=0: m=ffc4 DHT   l=  181 e=7.270047 a=13.168539
  8 p=0x00000899 d=0: m=ffc4 DHT   l=   31 e=2.799180 a=0.642857
  9 p=0x000008ba d=0: m=ffc4 DHT   l=  181 e=7.243483 a=18.140449
 10 p=0x00000971 d=0: m=ffda SOS   l=   12 e=2.446439 a=21.222222 remark: c=3
                                  entropy-coded data: l=7825 e=7.951519 a=87.032081 #ff00=28
 11 p=0x00002810 d=0: m=ffd9 EOI
Found SOI:
  1 p=0x005f5944    : m=ffd8 SOI
  2 p=0x005f5946 d=0: m=ffe1 APP1  l=51196 e=1.053391 a=6.302561
  3 p=0x00602144 d=0: m=ffe2 APP2  l=  564 e=4.070801 a=35.837790
  4 p=0x0060237a d=0: m=ffe5 APP5  l=65406 e=0.012234 a=0.067107
  5 p=0x006122fa d=0: m=ffe6 APP6  l=65406 e=0.000000 a=0.000000
  6 p=0x0062227a d=0: m=ffe7 APP7  l=65406 e=0.000000 a=0.000000
  7 p=0x006321fa d=0: m=ffe8 APP8  l=65406 e=0.000000 a=0.000000
  8 p=0x0064217a d=0: m=ffe9 APP9  l=65406 e=3.679414 a=46.448435
  9 p=0x006520fa d=0: m=ffe9 APP9  l=65406 e=4.392761 a=87.458465
 10 p=0x0066207a d=0: m=ffea APP10 l=65406 e=1.685760 a=15.264774
 11 p=0x00671ffa d=0: m=ffea APP10 l=65406 e=0.000000 a=0.000000
 12 p=0x00681f7a d=0: m=ffeb APP11 l=65406 e=0.485698 a=1.973610
 13 p=0x00691efa d=0: m=ffdb DQT   l=   67 e=3.255574 a=0.828125 remark: 65/65 = 1.000000
 14 p=0x00691f3f d=0: m=ffdb DQT   l=   67 e=1.350020 a=0.265625 remark: 65/65 = 1.000000
 15 p=0x00691f84 d=0: m=ffc0 SOF0  l=   17 e=3.323231 a=79.357143 remark: p=8 h=2040 w=1530 c=3
 16 p=0x00691f97 d=0: m=ffc4 DHT   l=   31 e=2.815937 a=0.750000
 17 p=0x00691fb8 d=0: m=ffc4 DHT   l=  181 e=7.270047 a=13.168539
 18 p=0x0069206f d=0: m=ffc4 DHT   l=   31 e=2.799180 a=0.642857
 19 p=0x00692090 d=0: m=ffc4 DHT   l=  181 e=7.243483 a=18.140449
 20 p=0x00692147 d=0: m=ffda SOS   l=   12 e=2.446439 a=21.222222 remark: c=3
                                  entropy-coded data: l=665645 e=7.969928 a=86.331133 #ff00=2609
 21 p=0x00734982 d=0: m=ffd9 EOI
Found SOI:
  1 p=0x005f5ec4    : m=ffd8 SOI
  2 p=0x005f5ec6 d=0: m=ffe0 APP0  l=   16 e=1.985228 a=6.615385
  3 p=0x005f5ed8 d=0: m=ffdb DQT   l=   67 e=4.506929 a=2.781250 remark: 65/65 = 1.000000
  4 p=0x005f5f1d d=0: m=ffdb DQT   l=   67 e=1.375467 a=1.078125 remark: 65/65 = 1.000000
  5 p=0x005f5f62 d=0: m=ffc0 SOF0  l=   17 e=3.006239 a=57.928571 remark: p=8 h=192 w=144 c=3
  6 p=0x005f5f75 d=0: m=ffc4 DHT   l=   31 e=2.815937 a=0.750000
  7 p=0x005f5f96 d=0: m=ffc4 DHT   l=  181 e=7.270047 a=13.168539
  8 p=0x005f604d d=0: m=ffc4 DHT   l=   31 e=2.799180 a=0.642857
  9 p=0x005f606e d=0: m=ffc4 DHT   l=  181 e=7.243483 a=18.140449
 10 p=0x005f6125 d=0: m=ffda SOS   l=   12 e=2.446439 a=21.222222 remark: c=3
                                  entropy-coded data: l=3122 e=7.874493 a=87.962832 #ff00=8
 11 p=0x005f6d65 d=0: m=ffd9 EOI

 

 

 

Get-ChildItem . | Select-Object Name, Length, LastWriteTime

Name                               Length LastWriteTime
----                               ------ -------------
00000000.jpeg                     6248762 2025/11/18 21:35:11
00000710.jpeg                        8450 2025/11/18 21:35:11


005f5944.jpeg                     1306688 2025/11/18 21:35:11
005f5ec4.jpeg                        3747 2025/11/18 21:35:11

IMG_20250924_000219.jpg           3599113 2025/9/23 18:02:22
IMG_20250924_000219_optimtest.jpg 2167406 2025/11/18 16:49:22
IMG_20251001_172433.jpg           7555951 2025/10/1 11:24:33

6248762+8450+1306688+3747=7567647

 

 

 

 

 

.\jpegoptim.exe .\IMG_20251001_172433_optimtest.jpg

 

python jpegdump.py -f -c -e .\IMG_20251001_172433_optimtest.jpg
File: .\IMG_20251001_172433_optimtest.jpg   里边变成只有2张了
Found SOI:
  1 p=0x00000000    : m=ffd8 SOI
  2 p=0x00000002 d=0: m=ffe1 APP1  l=51596 e=2.114622 a=14.244743
  3 p=0x0000c990 d=0: m=ffe2 APP2  l=  564 e=4.070801 a=35.837790
  4 p=0x0000cbc6 d=0: m=ffdb DQT   l=  132 e=2.761176 a=0.589147 remark: 130/65 = 2.000000
  5 p=0x0000cc4c d=0: m=ffc0 SOF0  l=   17 e=3.323231 a=76.357143 remark: p=8 h=4080 w=3060 c=3
  6 p=0x0000cc5f d=0: m=ffc4 DHT   l=  239 e=5.841939 a=32.169492
  7 p=0x0000cd50 d=0: m=ffda SOS   l=   12 e=2.446439 a=21.222222 remark: c=3
                                  entropy-coded data: l=5278348 e=7.967776 a=84.099467 #ff00=19098
  8 p=0x005157ea d=0: m=ffd9 EOI
Found SOI:
  1 p=0x00000710    : m=ffd8 SOI
  2 p=0x00000712 d=0: m=ffe0 APP0  l=   16 e=1.985228 a=6.615385
  3 p=0x00000724 d=0: m=ffdb DQT   l=   67 e=4.506929 a=2.781250 remark: 65/65 = 1.000000
  4 p=0x00000769 d=0: m=ffdb DQT   l=   67 e=1.375467 a=1.078125 remark: 65/65 = 1.000000
  5 p=0x000007ae d=0: m=ffc0 SOF0  l=   17 e=3.006239 a=57.928571 remark: p=8 h=192 w=144 c=3
  6 p=0x000007c1 d=0: m=ffc4 DHT   l=   31 e=2.815937 a=0.750000
  7 p=0x000007e2 d=0: m=ffc4 DHT   l=  181 e=7.270047 a=13.168539
  8 p=0x00000899 d=0: m=ffc4 DHT   l=   31 e=2.799180 a=0.642857
  9 p=0x000008ba d=0: m=ffc4 DHT   l=  181 e=7.243483 a=18.140449
 10 p=0x00000971 d=0: m=ffda SOS   l=   12 e=2.446439 a=21.222222 remark: c=3
                                  entropy-coded data: l=7825 e=7.951519 a=87.032081 #ff00=28
 11 p=0x00002810 d=0: m=ffd9 EOI

 

Get-ChildItem . | Select-Object Name, Length, LastWriteTime

Name                               Length LastWriteTime
----                               ------ -------------
00000000.jpeg                     5330924 2025/11/18 22:11:07
00000710.jpeg                        8450 2025/11/18 22:11:07




IMG_20251001_172433.jpg           7555951 2025/10/1 11:24:33
IMG_20251001_172433_optimtest.jpg 5330924 2025/11/18 22:10:41

 

APP0 (FFE0)

JFIF (JPEG File Interchange Format),最常见。

存储内容:版本、分辨率、缩略图等。

开头一般是 "JFIF\0" 或 "JFXX\0"。

APP1 (FFE1)

EXIF (Exchangeable Image File Format),由相机/手机写入。

存储内容:拍摄时间、相机型号、GPS 信息、方向、缩略图等。

开头一般是 "Exif\0\0"。

有时也可能存 XMP (Adobe Extensible Metadata Platform),开头 "http://ns.adobe.com/xap/1.0/"。

 

vscode hex查看

image

filter: 0; fileterIntensity: 0.0; filterMask: 0; captureOrientation: 90;
algolist: 0;
multi-frame: 1;
brp_mask:0;
brp_del_th:0.0000,0.0000;
brp_del_sen:0.0000,0.0000;
motionR: 0;
delta:null;

module: photo;hw-remosaic: false;touch: (-1.0, -1.0);sceneMode: 8;cct_value: 0;AI_Scene: (-1, -1);aec_lux: 212.0;aec_lux_index: 0;albedo:  ;confidence:  ;motionLevel: 0;weatherinfo: weather??, icon:2, weatherInfo:103;temperature: 36;

 

 

 

shaking: 0.0; highlight: false; burst: false; filter: 0; fileterIntensity: 0.0; filterMask: 0; captureOrientation: 90; multi-frame: 1; brp_mask:0; brp_del_th:0.0000,0.0000;brp_del_sen:0.0000,0.0000;motionR: 0;
delta:null;ModuleId: photo;hw-remosaic: false;touch: (-1.0, -1.0);

sceneMode: Night;cct_value: 0;aec_lux_index: 0;albedo:  ;confidence:  ;hdrState: auto;mMotionLevel: 0;aiScene: STREET;aeLux: 212.0;zoomValue: 0.6;zeissColor: bright;cameraType: Wide;facing: back;fNumber: 2.0; beautyType: ; filterUI: none; filterIntensityUI: 0; ��4ICC_PROFILE

 

 

�~vivoawb

 

vivo X100 Pro MediaTek Camera Application

 

posted @ 2025-11-19 06:39  hrdom  阅读(0)  评论(0)    收藏  举报