|
54 | 54 | // after subsampling
|
55 | 55 | // Camera parameters for QQVGA
|
56 | 56 | // See ovcam.c for more options
|
57 |
| -#define NATIVE_CCD_COLS (160) |
58 |
| -#define NATIVE_CCD_ROWS (240) // Should be 240, but some rows don't seem to work |
59 |
| -#define NATIVE_COL_SS (1) // Hardware skipping 0 pixels |
60 |
| -#define NATIVE_ROW_SS (2) // Hardware skipping every 1/2 rows |
| 57 | +#define NATIVE_CCD_COLS (160) |
| 58 | +#define NATIVE_CCD_ROWS (240) // Less than 240 as some rows don't work? |
| 59 | +#define NATIVE_COL_SS (1) // Hardware skipping 0 pixels |
| 60 | +#define NATIVE_ROW_SS (2) // Hardware skipping every 1/2 rows |
61 | 61 |
|
62 | 62 | // Hardware output parameters
|
63 |
| -#define NATIVE_IMAGE_COLS (160) // NATIVE_CCD_COLS/NATIVE_COL_SS |
64 |
| -#define NATIVE_IMAGE_ROWS (120) // NATIVE_CCD_ROWS/NATIVE_ROW_SS |
| 63 | +#define NATIVE_IMAGE_COLS (160) // NATIVE_CCD_COLS/NATIVE_COL_SS |
| 64 | +#define NATIVE_IMAGE_ROWS (120) // NATIVE_CCD_ROWS/NATIVE_ROW_SS |
65 | 65 |
|
66 | 66 | // TODO: Integrate row windowing
|
67 | 67 | // Windowing parameters
|
68 |
| -#define WINDOW_START_COL (20) |
69 |
| -#define WINDOW_END_COL (140) |
70 |
| -#define WINDOW_START_ROW (0) |
71 |
| -#define WINDOW_END_ROW (120) |
| 68 | +#define WINDOW_START_COL (20) |
| 69 | +#define WINDOW_END_COL (140) |
| 70 | +#define WINDOW_START_ROW (0) |
| 71 | +#define WINDOW_END_ROW (120) |
72 | 72 |
|
73 | 73 | // Downsampling parameters
|
74 |
| -#define DS_COL_PERIOD (4) // Capturing 1/4 pixels |
75 |
| -#define DS_ROW_PERIOD (4) // Capturing 1/4 rows |
76 |
| -#define DS_FRAME_PERIOD (1) // Capturing 1/1 frames |
| 74 | +#define DS_COL_PERIOD (4) // Capturing 1/4 pixels |
| 75 | +#define DS_ROW_PERIOD (4) // Capturing 1/4 rows |
| 76 | +#define DS_FRAME_PERIOD (1) // Capturing 1/1 frames |
77 | 77 |
|
78 | 78 | // Image output parameters
|
79 |
| -#define DS_IMAGE_COLS (30) // NATIVE_IMAGE_COLS/DS_COL_PERIOD |
80 |
| -#define DS_IMAGE_ROWS (30) // NATIVE_IMAGE_ROWS/DS_ROW_PERIOD |
| 79 | +#define DS_IMAGE_COLS (30) // NATIVE_IMAGE_COLS/DS_COL_PERIOD |
| 80 | +#define DS_IMAGE_ROWS (30) // NATIVE_IMAGE_ROWS/DS_ROW_PERIOD |
81 | 81 |
|
82 | 82 | // Default camera capture timings for QQVGA no subsampling, 25 fps
|
83 |
| -#define ROW_ROW_TIME (32) |
84 |
| -#define VSYNC_ROW_TIME (12800) |
85 |
| -#define ROW_VSYNC_TIME (2800) |
86 |
| -#define VSYNC_VSYNC_TIME (25000) |
| 83 | +#define ROW_ROW_TIME (32) |
| 84 | +#define VSYNC_ROW_TIME (12800) |
| 85 | +#define ROW_VSYNC_TIME (2800) |
| 86 | +#define VSYNC_VSYNC_TIME (25000) |
87 | 87 |
|
88 | 88 | // Amount of time before an event to trigger timer
|
89 |
| -#define ROW_ROW_OFFSET (6) // 384 cycles |
90 |
| -#define VSYNC_ROW_OFFSET (6) // 384 cycles |
91 |
| -#define ROW_VSYNC_OFFSET (10) // 640 cycles |
92 |
| -#define VSYNC_VSYNC_OFFSET (8) // 512 cycles |
| 89 | +#define ROW_ROW_OFFSET (6) // 384 cycles |
| 90 | +#define VSYNC_ROW_OFFSET (6) // 384 cycles |
| 91 | +#define ROW_VSYNC_OFFSET (10) // 640 cycles |
| 92 | +#define VSYNC_VSYNC_OFFSET (8) // 512 cycles |
93 | 93 |
|
94 |
| -#define CAM_POOL_SIZE (4) // 4 frames shared with system |
| 94 | +#define CAM_POOL_SIZE (4) // 4 frames shared with system |
95 | 95 |
|
96 | 96 | // The timer states describe what the timer is waiting for
|
97 | 97 | // i.e. VSYNC state means timer is waiting for VSYNC event
|
|
0 commit comments