Thanks for the continued investigation,
@0dan0 . I'll see if I can get hist.c working now---I did have it calling during preview (and I think capture), but with the imagebase pointing to the wrong address in Type D, that might be why I saw it crashing.
I continued my investigation of sensor and ipl commands, and had Claude.ai look at the dumps and info. I ran:
Code:
> ipl getcapmaxrawinfo 0
IPL(0) max raw width = 1936 height = 1076 lineoffset = 536870672
IPL(0) max raw ImgBit = -1 ImgPix = -1
> ipl dumpbuf 0
********** IPL BUFFER MAP(0) **********
Buffer TabCnt = 28 MapCnt = 28
Buffer resource 0xa250a3f0 ~ 0xa7ffe000 0x05af3c10
0 0 0 0xa250a3f0 ~ 0xa28051d0 0x002fade0 SIE_RAW_CH0_1
1 1 1 0xa28051d0 ~ 0xa2afffb0 0x002fade0 SIE_RAW_CH0_2
2 10 2 0xa2afffb0 ~ 0xa2b01fb0 0x00002000 SIE_CA_1
3 11 3 0xa2b01fb0 ~ 0xa2b03fb0 0x00002000 SIE_CA_2
4 16 4 0xa2b03fb0 ~ 0xa2b04bb0 0x00000c00 IPE_VA_1
5 17 5 0xa2b04bb0 ~ 0xa2b057b0 0x00000c00 IPE_VA_2
6 23 6 0xa2b057b0 ~ 0xa2b63030 0x0005d880 IPE_LCA_1
7 24 7 0xa2b63030 ~ 0xa2bc08b0 0x0005d880 IPE_LCA_2
8 33 8 0xa2bc08b0 ~ 0xa2c1e130 0x0005d880 IPEIFE2_LCA_1
9 34 9 0xa2c1e130 ~ 0xa2c7b9b0 0x0005d880 IPEIFE2_LCA_2
10 36 10 0xa2c7b9b0 ~ 0xa2fafbb0 0x00334200 IMEP1_1
11 37 11 0xa2fafbb0 ~ 0xa32e3db0 0x00334200 IMEP1_2
12 38 12 0xa32e3db0 ~ 0xa3617fb0 0x00334200 IMEP1_3
13 39 13 0xa3617fb0 ~ 0xa394c1b0 0x00334200 IMEP1_4
14 40 14 0xa394c1b0 ~ 0xa3c803b0 0x00334200 IMEP1_5
15 41 15 0xa3c803b0 ~ 0xa3fb45b0 0x00334200 IMEP1_6
16 47 16 0xa3fb45b0 ~ 0xa404c3b0 0x00097e00 IMEP2_1
17 48 17 0xa404c3b0 ~ 0xa40e41b0 0x00097e00 IMEP2_2
18 49 18 0xa40e41b0 ~ 0xa417bfb0 0x00097e00 IMEP2_3
19 50 19 0xa417bfb0 ~ 0xa4213db0 0x00097e00 IMEP2_4
20 51 20 0xa4213db0 ~ 0xa42abbb0 0x00097e00 IMEP2_5
21 52 21 0xa42abbb0 ~ 0xa43439b0 0x00097e00 IMEP2_6
22 58 22 0xa43439b0 ~ 0xa43439b0 0x00000000 IMEP3_1
23 59 23 0xa43439b0 ~ 0xa43439b0 0x00000000 IMEP3_2
24 60 24 0xa43439b0 ~ 0xa43439b0 0x00000000 IMEP3_3
25 61 25 0xa43439b0 ~ 0xa43439b0 0x00000000 IMEP3_4
26 62 26 0xa43439b0 ~ 0xa43439b0 0x00000000 IMEP3_5
27 63 27 0xa43439b0 ~ 0xa43439b0 0x00000000 IMEP3_6
28 -1 -1 0x00000000 ~ 0x00000000 0x00000000
29 -1 -1 0x00000000 ~ 0x00000000 0x00000000
30 -1 -1 0x00000000 ~ 0x00000000 0x00000000
31 -1 -1 0x00000000 ~ 0x00000000 0x00000000
32 -1 -1 0x00000000 ~ 0x00000000 0x00000000
33 -1 -1 0x00000000 ~ 0x00000000 0x00000000
34 -1 -1 0x00000000 ~ 0x00000000 0x00000000
35 -1 -1 0x00000000 ~ 0x00000000 0x00000000
36 -1 -1 0x00000000 ~ 0x00000000 0x00000000
37 -1 -1 0x00000000 ~ 0x00000000 0x00000000
38 -1 -1 0x00000000 ~ 0x00000000 0x00000000
39 -1 -1 0x00000000 ~ 0x00000000 0x00000000
40 -1 -1 0x00000000 ~ 0x00000000 0x00000000
41 -1 -1 0x00000000 ~ 0x00000000 0x00000000
42 -1 -1 0x00000000 ~ 0x00000000 0x00000000
43 -1 -1 0x00000000 ~ 0x00000000 0x00000000
44 -1 -1 0x00000000 ~ 0x00000000 0x00000000
45 -1 -1 0x00000000 ~ 0x00000000 0x00000000
46 -1 -1 0x00000000 ~ 0x00000000 0x00000000
47 -1 -1 0x00000000 ~ 0x00000000 0x00000000
48 -1 -1 0x00000000 ~ 0x00000000 0x00000000
49 -1 -1 0x00000000 ~ 0x00000000 0x00000000
50 -1 -1 0x00000000 ~ 0x00000000 0x00000000
51 -1 -1 0x00000000 ~ 0x00000000 0x00000000
52 -1 -1 0x00000000 ~ 0x00000000 0x00000000
53 -1 -1 0x00000000 ~ 0x00000000 0x00000000
54 -1 -1 0x00000000 ~ 0x00000000 0x00000000
55 -1 -1 0x00000000 ~ 0x00000000 0x00000000
56 -1 -1 0x00000000 ~ 0x00000000 0x00000000
57 -1 -1 0x00000000 ~ 0x00000000 0x00000000
58 -1 -1 0x00000000 ~ 0x00000000 0x00000000
59 -1 -1 0x00000000 ~ 0x00000000 0x00000000
60 -1 -1 0x00000000 ~ 0x00000000 0x00000000
61 -1 -1 0x00000000 ~ 0x00000000 0x00000000
62 -1 -1 0x00000000 ~ 0x00000000 0x00000000
63 -1 -1 0x00000000 ~ 0x00000000 0x00000000
64 -1 -1 0x00000000 ~ 0x00000000 0x00000000
65 -1 -1 0x00000000 ~ 0x00000000 0x00000000
66 -1 -1 0x00000000 ~ 0x00000000 0x00000000
67 -1 -1 0x00000000 ~ 0x00000000 0x00000000
68 -1 -1 0x00000000 ~ 0x00000000 0x00000000
69 -1 -1 0x00000000 ~ 0x00000000 0x00000000
70 -1 -1 0x00000000 ~ 0x00000000 0x00000000
71 -1 -1 0x00000000 ~ 0x00000000 0x00000000
72 -1 -1 0x00000000 ~ 0x00000000 0x00000000
73 -1 -1 0x00000000 ~ 0x00000000 0x00000000
74 -1 -1 0x00000000 ~ 0x00000000 0x00000000
75 -1 -1 0x00000000 ~ 0x00000000 0x00000000
76 -1 -1 0x00000000 ~ 0x00000000 0x00000000
77 -1 -1 0x00000000 ~ 0x00000000 0x00000000
78 -1 -1 0x00000000 ~ 0x00000000 0x00000000
79 -1 -1 0x00000000 ~ 0x00000000 0x00000000
80 -1 -1 0x00000000 ~ 0x00000000 0x00000000
81 -1 -1 0x00000000 ~ 0x00000000 0x00000000
82 -1 -1 0x00000000 ~ 0x00000000 0x00000000
83 -1 -1 0x00000000 ~ 0x00000000 0x00000000
84 -1 -1 0x00000000 ~ 0x00000000 0x00000000
85 -1 -1 0x00000000 ~ 0x00000000 0x00000000
86 -1 -1 0x00000000 ~ 0x00000000 0x00000000
87 -1 -1 0x00000000 ~ 0x00000000 0x00000000
88 -1 -1 0x00000000 ~ 0x00000000 0x00000000
89 -1 -1 0x00000000 ~ 0x00000000 0x00000000
90 -1 -1 0x00000000 ~ 0x00000000 0x00000000
91 -1 -1 0x00000000 ~ 0x00000000 0x00000000
92 -1 -1 0x00000000 ~ 0x00000000 0x00000000
93 -1 -1 0x00000000 ~ 0x00000000 0x00000000
94 -1 -1 0x00000000 ~ 0x00000000 0x00000000
95 -1 -1 0x00000000 ~ 0x00000000 0x00000000
96 -1 -1 0x00000000 ~ 0x00000000 0x00000000
97 -1 -1 0x00000000 ~ 0x00000000 0x00000000
98 -1 -1 0x00000000 ~ 0x00000000 0x00000000
99 -1 -1 0x00000000 ~ 0x00000000 0x00000000
100 -1 -1 0x00000000 ~ 0x00000000 0x00000000
101 -1 -1 0x00000000 ~ 0x00000000 0x00000000
102 -1 -1 0x00000000 ~ 0x00000000 0x00000000
103 -1 -1 0x00000000 ~ 0x00000000 0x00000000
104 -1 -1 0x00000000 ~ 0x00000000 0x00000000
105 -1 -1 0x00000000 ~ 0x00000000 0x00000000
106 -1 -1 0x00000000 ~ 0x00000000 0x00000000
107 -1 -1 0x00000000 ~ 0x00000000 0x00000000
108 -1 -1 0x00000000 ~ 0x00000000 0x00000000
109 -1 -1 0x00000000 ~ 0x00000000 0x00000000
110 -1 -1 0x00000000 ~ 0x00000000 0x00000000
111 -1 -1 0x00000000 ~ 0x00000000 0x00000000
112 -1 -1 0x00000000 ~ 0x00000000 0x00000000
113 -1 -1 0x00000000 ~ 0x00000000 0x00000000
114 -1 -1 0x00000000 ~ 0x00000000 0x00000000
115 -1 -1 0x00000000 ~ 0x00000000 0x00000000
116 -1 -1 0x00000000 ~ 0x00000000 0x00000000
117 -1 -1 0x00000000 ~ 0x00000000 0x00000000
118 -1 -1 0x00000000 ~ 0x00000000 0x00000000
119 -1 -1 0x00000000 ~ 0x00000000 0x00000000
120 -1 -1 0x00000000 ~ 0x00000000 0x00000000
121 -1 -1 0x00000000 ~ 0x00000000 0x00000000
122 -1 -1 0x00000000 ~ 0x00000000 0x00000000
123 -1 -1 0x00000000 ~ 0x00000000 0x00000000
124 -1 -1 0x00000000 ~ 0x00000000 0x00000000
125 -1 -1 0x00000000 ~ 0x00000000 0x00000000
126 -1 -1 0x00000000 ~ 0x00000000 0x00000000
127 -1 -1 0x00000000 ~ 0x00000000 0x00000000
And Claude.ai gave me the following summary:
Buffer Analysis - Proof of Native Capture
| Path | Buffer Size | Expected for Resolution | Match? |
|---|
| IMEP1 | 0x00334200 = 3,359,232 bytes | 1728 × 1296 × 1.5 (YUV) = 3,359,232 | EXACT |
| IMEP2 | 0x00097e00 = 622,080 bytes | 656 × 480 × 1.5 = 472,320 | (with padding) |
| SIE_RAW | 0x002fade0 = 3,140,064 bytes | 1936 × 1076 raw Bayer | ✓ |
Confirmed: Type D Captures at Native 1728x1296 (? Suspect ?)
The
IMEP1 buffer size exactly matches 1728×1296 YUV. This proves:
- NOT upscaled - If upscaled from 656x480, the buffer would only need ~472KB, not 3.3MB
- Native high-res capture - The full 3.3MB buffer is being used for each frame
- Path 1 is the capture path - Path 2 (656x480) is just for LCD preview
Interesting Mystery
| Source | Resolution |
|---|
| Sensor max | 1936 × 1076 |
| IMEP1 output | 1728 × 1296 |
Height
1296 > 1076! This means some ISP interpolation is happening to achieve the 4:3 ratio. But the quality is still far superior to the old 656x480.