|
3 | 3 | * @author Martin Pulec <[email protected]> |
4 | 4 | */ |
5 | 5 | /* |
6 | | - * Copyright (c) 2014-2020 CESNET, z. s. p. o. |
| 6 | + * Copyright (c) 2014-2025 CESNET, zájmové sdružení právnických osob |
7 | 7 | * All rights reserved. |
8 | 8 | * |
9 | 9 | * Redistribution and use in source and binary forms, with or without |
@@ -121,74 +121,75 @@ struct deltacast_frame_mode_t { |
121 | 121 | double fps; |
122 | 122 | enum interlacing_t interlacing; |
123 | 123 | unsigned long int iface; |
| 124 | + VHD_CLOCKDIVISOR clock_system; // VHD_CLOCKDIV_1 or VHD_CLOCKDIV_1001 |
124 | 125 | }; |
125 | 126 |
|
126 | 127 | const static struct deltacast_frame_mode_t deltacast_frame_modes[] = { |
127 | 128 | {VHD_VIDEOSTD_S274M_1080p_25Hz, "SMPTE 274M 1080p 25 Hz", |
128 | | - 1920u, 1080u, 25.0, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 129 | + 1920u, 1080u, 25.0, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
129 | 130 | {VHD_VIDEOSTD_S274M_1080p_30Hz, "SMPTE 274M 1080p 29.97 Hz", |
130 | | - 1920u, 1080u, 29.97, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 131 | + 1920u, 1080u, 29.97, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
131 | 132 | {VHD_VIDEOSTD_S274M_1080p_30Hz, "SMPTE 274M 1080p 30 Hz", |
132 | | - 1920u, 1080u, 30.0, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 133 | + 1920u, 1080u, 30.0, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
133 | 134 | {VHD_VIDEOSTD_S274M_1080i_50Hz, "SMPTE 274M 1080i 50 Hz", |
134 | | - 1920u, 1080u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO}, |
| 135 | + 1920u, 1080u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
135 | 136 | {VHD_VIDEOSTD_S274M_1080i_60Hz, "SMPTE 274M 1080i 59.94 Hz", |
136 | | - 1920u, 1080u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO}, |
| 137 | + 1920u, 1080u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
137 | 138 | {VHD_VIDEOSTD_S274M_1080i_60Hz, "SMPTE 274M 1080i 60 Hz", |
138 | | - 1920u, 1080u, 30.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO}, |
| 139 | + 1920u, 1080u, 30.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
139 | 140 | {VHD_VIDEOSTD_S296M_720p_50Hz, "SMPTE 296M 720p 50 Hz", |
140 | | - 1280u, 720u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 141 | + 1280u, 720u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
141 | 142 | {VHD_VIDEOSTD_S296M_720p_60Hz, "SMPTE 296M 720p 59.94 Hz", |
142 | | - 1280u, 720u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 143 | + 1280u, 720u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
143 | 144 | {VHD_VIDEOSTD_S296M_720p_60Hz, "SMPTE 296M 720p 60 Hz", |
144 | | - 1280u, 720u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 145 | + 1280u, 720u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
145 | 146 | {VHD_VIDEOSTD_S259M_PAL, "SMPTE 259M PAL", |
146 | | - 720u, 576u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO}, |
| 147 | + 720u, 576u, 25.0, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
147 | 148 | {VHD_VIDEOSTD_S259M_NTSC, "SMPTE 259M NTSC", |
148 | | - 720u, 487u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO}, |
| 149 | + 720u, 487u, 29.97, UPPER_FIELD_FIRST, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
149 | 150 | {VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 23.98 Hz", |
150 | | - 1920u, 1080u, 23.98, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 151 | + 1920u, 1080u, 23.98, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
151 | 152 | {VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 24 Hz", |
152 | | - 1920u, 1080u, 24.0, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 153 | + 1920u, 1080u, 24.0, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
153 | 154 | {VHD_VIDEOSTD_S274M_1080p_60Hz, "SMPTE 274M 1080p 59.94 Hz", |
154 | | - 1920u, 1080u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 155 | + 1920u, 1080u, 59.94, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
155 | 156 | {VHD_VIDEOSTD_S274M_1080p_60Hz, "SMPTE 274M 1080p 60 Hz", |
156 | | - 1920u, 1080u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 157 | + 1920u, 1080u, 60.0, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
157 | 158 | {VHD_VIDEOSTD_S274M_1080p_24Hz, "SMPTE 274M 1080p 50 Hz", |
158 | | - 1920u, 1080u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO}, |
| 159 | + 1920u, 1080u, 50.0, PROGRESSIVE, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
159 | 160 | {VHD_VIDEOSTD_S274M_1080psf_24Hz, "SMPTE 274M 1080psf 23.98 Hz", |
160 | | - 1920u, 1080u, 23.98, SEGMENTED_FRAME, VHD_INTERFACE_AUTO}, |
| 161 | + 1920u, 1080u, 23.98, SEGMENTED_FRAME, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
161 | 162 | {VHD_VIDEOSTD_S274M_1080psf_24Hz, "SMPTE 274M 1080psf 24 Hz", |
162 | | - 1920u, 1080u, 24.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO}, |
| 163 | + 1920u, 1080u, 24.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
163 | 164 | {VHD_VIDEOSTD_S274M_1080psf_25Hz, "SMPTE 274M 1080psf 25 Hz", |
164 | | - 1920u, 1080u, 25.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO}, |
| 165 | + 1920u, 1080u, 25.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
165 | 166 | {VHD_VIDEOSTD_S274M_1080psf_30Hz, "SMPTE 274M 1080psf 29.97 Hz", |
166 | | - 1920u, 1080u, 29.97, SEGMENTED_FRAME, VHD_INTERFACE_AUTO}, |
| 167 | + 1920u, 1080u, 29.97, SEGMENTED_FRAME, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1001}, |
167 | 168 | {VHD_VIDEOSTD_S274M_1080psf_30Hz, "SMPTE 274M 1080psf 30 Hz", |
168 | | - 1920u, 1080u, 30.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO}, |
| 169 | + 1920u, 1080u, 30.0, SEGMENTED_FRAME, VHD_INTERFACE_AUTO, VHD_CLOCKDIV_1}, |
169 | 170 | // UHD modes |
170 | 171 | {VHD_VIDEOSTD_3840x2160p_24Hz, "3840x2160 24 Hz", |
171 | | - 3840u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD}, |
| 172 | + 3840u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD, VHD_CLOCKDIV_1}, |
172 | 173 | {VHD_VIDEOSTD_3840x2160p_25Hz, "3840x2160 25 Hz", |
173 | | - 3840u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD}, |
| 174 | + 3840u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD, VHD_CLOCKDIV_1}, |
174 | 175 | {VHD_VIDEOSTD_3840x2160p_30Hz, "3840x2160 30 Hz", |
175 | | - 3840u, 2160u, 30.0, PROGRESSIVE, VHD_INTERFACE_4XHD}, |
| 176 | + 3840u, 2160u, 30.0, PROGRESSIVE, VHD_INTERFACE_4XHD, VHD_CLOCKDIV_1}, |
176 | 177 | {VHD_VIDEOSTD_3840x2160p_50Hz, "3840x2160 50 Hz", |
177 | | - 3840u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A}, |
| 178 | + 3840u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A, VHD_CLOCKDIV_1}, |
178 | 179 | {VHD_VIDEOSTD_3840x2160p_60Hz, "3840x2160 60 Hz", |
179 | | - 3840u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A}, |
| 180 | + 3840u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A, VHD_CLOCKDIV_1}, |
180 | 181 | {VHD_VIDEOSTD_4096x2160p_24Hz, "4096x2160 24 Hz", |
181 | | - 4096u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD}, |
| 182 | + 4096u, 2160u, 24.0, PROGRESSIVE, VHD_INTERFACE_4XHD, VHD_CLOCKDIV_1}, |
182 | 183 | {VHD_VIDEOSTD_4096x2160p_25Hz, "4096x2160 25 Hz", |
183 | | - 4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD}, |
| 184 | + 4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD, VHD_CLOCKDIV_1}, |
184 | 185 | {VHD_VIDEOSTD_4096x2160p_25Hz, "4096x2160 25 Hz", |
185 | | - 4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD}, |
| 186 | + 4096u, 2160u, 25.0, PROGRESSIVE, VHD_INTERFACE_4XHD, VHD_CLOCKDIV_1}, |
186 | 187 | {VHD_VIDEOSTD_4096x2160p_48Hz, "4096x2160 48 Hz", |
187 | | - 4096u, 2160u, 48.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A}, |
| 188 | + 4096u, 2160u, 48.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A, VHD_CLOCKDIV_1}, |
188 | 189 | {VHD_VIDEOSTD_4096x2160p_50Hz, "4096x2160 50 Hz", |
189 | | - 4096u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A}, |
| 190 | + 4096u, 2160u, 50.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A, VHD_CLOCKDIV_1}, |
190 | 191 | {VHD_VIDEOSTD_4096x2160p_60Hz, "4096x2160 60 Hz", |
191 | | - 4096u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A}, |
| 192 | + 4096u, 2160u, 60.0, PROGRESSIVE, VHD_INTERFACE_4X3G_A, VHD_CLOCKDIV_1}, |
192 | 193 | }; |
193 | 194 |
|
194 | 195 | const static int deltacast_frame_modes_count = sizeof(deltacast_frame_modes)/sizeof(deltacast_frame_mode_t); |
|
0 commit comments