AJA NTV2 SDK  18.0.0.2717
NTV2 SDK 18.0.0.2717
ntv2devicefeatures.cpp
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MIT */
12 #include "ntv2devicefeatures.h"
13 
14 // Most of the device features functions are generated using a Python script from files inside 'ntv2projects/sdkgen/device'.
15 // The script writes the declarations into 'ntv2devicefeatures.hh', and implementations into 'ntv2devicefeatures.hpp'...
16 #include "ntv2devicefeatures.hpp"
17 
19 // The rest of the non-sdkgen-generated function implementations follow...
21 
22 #if !defined(NTV2_DEPRECATE_17_2)
23  bool NTV2DeviceCanDoAudioOut (const NTV2DeviceID inDeviceID)
24  {
25  UWord outputs = 0;
26  outputs += NTV2DeviceGetNumVideoOutputs(inDeviceID);
27  outputs += NTV2DeviceGetNumHDMIAudioOutputChannels(inDeviceID);
28  outputs += NTV2DeviceGetNumAnalogAudioOutputChannels(inDeviceID);
29  return outputs > 0 ? true : false;
30  }
31 
32  bool NTV2DeviceCanDoAudioIn (const NTV2DeviceID inDeviceID)
33  {
34  UWord inputs = 0;
35  inputs += NTV2DeviceGetNumVideoInputs(inDeviceID);
36  inputs += NTV2DeviceGetNumHDMIAudioInputChannels(inDeviceID);
37  inputs += NTV2DeviceGetNumAnalogAudioInputChannels(inDeviceID);
38  return inputs > 0 ? true : false;
39  }
40 
41  bool NTV2DeviceCanDo292Out (NTV2DeviceID boardID, UWord index0)
42  {
43  switch (index0)
44  {
45  case 0: return NTV2DeviceCanDoWidget(boardID, NTV2_WgtSDIOut1);
46  case 1: return NTV2DeviceCanDoWidget(boardID, NTV2_WgtSDIOut2);
47  case 2: return NTV2DeviceCanDoWidget(boardID, NTV2_WgtSDIOut3);
48  case 3: return NTV2DeviceCanDoWidget(boardID, NTV2_WgtSDIOut4);
49  default: return false;
50  }
51  } // NTV2DeviceCanDo292Out
52 
53  bool NTV2DeviceCanDo3GOut (NTV2DeviceID boardID, UWord index0)
54  {
55  switch (index0)
56  {
57  case 0: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut1);
58  case 1: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut2);
59  case 2: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut3);
60  case 3: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut4);
61  case 4: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut5);
62  case 5: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut6);
63  case 6: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut7);
64  case 7: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIOut8);
65  default: return false;
66  }
67  } // NTV2DeviceCanDo3GOut
68 
69  bool NTV2DeviceCanDo12GOut (NTV2DeviceID boardID, UWord index0)
70  {
71  switch (index0)
72  {
73  case 0: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIOut1);
74  case 1: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIOut2);
75  case 2: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIOut3);
76  case 3: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIOut4);
77  default: return false;
78  }
79  } // NTV2DeviceCanDo12GOut
80 
81  bool NTV2DeviceCanDo292In (NTV2DeviceID boardID, UWord index0)
82  {
83  switch (index0)
84  {
85  case 0: return NTV2DeviceCanDoWidget(boardID, NTV2_WgtSDIIn1);
86  case 1: return NTV2DeviceCanDoWidget(boardID, NTV2_WgtSDIIn2);
87  default: return false;
88  }
89  } // NTV2DeviceCanDo292In
90 
91  bool NTV2DeviceCanDo3GIn (NTV2DeviceID boardID, UWord index0)
92  {
93  switch (index0)
94  {
95  case 0: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn1);
96  case 1: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn2);
97  case 2: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn3);
98  case 3: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn4);
99  case 4: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn5);
100  case 5: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn6);
101  case 6: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn7);
102  case 7: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn8);
103  default: return false;
104  }
105  } // NTV2DeviceCanDo3GIn
106 
107  bool NTV2DeviceCanDo12GIn (NTV2DeviceID boardID, UWord index0)
108  {
109  switch (index0)
110  {
111  case 0: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIIn1);
112  case 1: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIIn2);
113  case 2: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIIn3);
114  case 3: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIIn4);
115  default: return false;
116  }
117  } // NTV2DeviceCanDo12GIn
118 
120  {
121  switch (index0)
122  {
127  case 2: return (NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn3) || NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIIn3));
128  case 3: return (NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn4) || NTV2DeviceCanDoWidget(boardID, NTV2_Wgt12GSDIIn4));
129  case 4: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn5);
130  case 5: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn6);
131  case 6: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn7);
132  case 7: return NTV2DeviceCanDoWidget(boardID, NTV2_Wgt3GSDIIn8);
133  default: return false;
134  }
135  } // NTV2DeviceCanDoLTCEmbeddedN
136 
137  bool NTV2DeviceCanDoOutputDestination (const NTV2DeviceID inDeviceID, const NTV2OutputDest inOutputDest)
138  {
139  const UWord numSDIs = NTV2DeviceGetNumVideoOutputs(inDeviceID);
140  switch(inOutputDest)
141  {
144  case NTV2_OUTPUTDESTINATION_SDI1: return numSDIs > 0;
145  case NTV2_OUTPUTDESTINATION_SDI2: return numSDIs > 1;
146  case NTV2_OUTPUTDESTINATION_SDI3: return numSDIs > 2;
147  case NTV2_OUTPUTDESTINATION_SDI4: return numSDIs > 3;
148  case NTV2_OUTPUTDESTINATION_SDI5: return numSDIs > 4;
149  case NTV2_OUTPUTDESTINATION_SDI6: return numSDIs > 5;
150  case NTV2_OUTPUTDESTINATION_SDI7: return numSDIs > 6;
151  case NTV2_OUTPUTDESTINATION_SDI8: return numSDIs > 7;
152  default: break;
153  }
154  return false;
155  }
156 
158  {
159  if (NTV2DeviceGetNumLUTs(inDeviceID) > 0)
160  return true;
161  return false;
162  }
163 
165  {
166  if (NTV2DeviceGetNumCSCs(inDeviceID) > 0)
167  return true;
168  return false;
169  }
170 
172  {
173  UWord factor = 1; // default
174  switch (inFG)
175  {
176  case NTV2_FG_4x1920x1080:
177  case NTV2_FG_1920x1080:
178  if (inFBF == NTV2_FBF_10BIT_ARGB || inFBF == NTV2_FBF_16BIT_ARGB || inFBF == NTV2_FBF_48BIT_RGB || inFBF == NTV2_FBF_12BIT_RGB_PACKED )
179  factor = 2;
180  break;
181 
182  case NTV2_FG_2048x1556:
183  case NTV2_FG_2048x1588:
184  factor = (inFBF == NTV2_FBF_10BIT_ARGB || inFBF == NTV2_FBF_16BIT_ARGB || inFBF == NTV2_FBF_48BIT_RGB || inFBF == NTV2_FBF_12BIT_RGB_PACKED) ? 4 : 2;
185  break;
186 
187  case NTV2_FG_4x2048x1080:
188  case NTV2_FG_2048x1080:
189  case NTV2_FG_1920x1112:
190  case NTV2_FG_1920x1114:
191  case NTV2_FG_2048x1112:
192  case NTV2_FG_2048x1114:
193  factor = (inFBF == NTV2_FBF_16BIT_ARGB) ? 4 : 2;
194  break;
195 
196  case NTV2_FG_4x3840x2160:
197  switch (inFBF)
198  {
200  case NTV2_FBF_48BIT_RGB: return 24;
201  case NTV2_FBF_10BIT_ARGB: return 22;
202  case NTV2_FBF_16BIT_ARGB: factor = 2; break;
203  default: break;
204  }
205  break;
206 
207  case NTV2_FG_4x4096x2160:
208  switch (inFBF)
209  {
210  case NTV2_FBF_ARGB:
211  case NTV2_FBF_RGBA:
212  case NTV2_FBF_ABGR:
213  case NTV2_FBF_10BIT_RGB:
214  case NTV2_FBF_10BIT_DPX:
217  case NTV2_FBF_10BIT_RGB_PACKED: return 17;
219  case NTV2_FBF_48BIT_RGB: return 26;
220  case NTV2_FBF_10BIT_ARGB: return 23;
221  case NTV2_FBF_16BIT_ARGB: return 34;
222  default: break;
223  }
224  break;
225 
226 #if defined(_DEBUG)
227  case NTV2_FG_1280x720:
228  case NTV2_FG_720x486:
229  case NTV2_FG_720x576:
230  case NTV2_FG_720x508:
231  case NTV2_FG_720x598:
232  case NTV2_FG_1280x740:
233  case NTV2_FG_720x514:
234  case NTV2_FG_720x612:
235  case NTV2_FG_INVALID:
236  break;
237 #else
238  default: break;
239 #endif
240  }
241  if (inFG == NTV2_FG_4x1920x1080 || inFG == NTV2_FG_4x2048x1080)
242  factor *= 4;
243  if (inFG == NTV2_FG_4x3840x2160 || inFG == NTV2_FG_4x4096x2160)
244  factor *= 16;
245  return factor;
246  } // Get8MBFrameSizeFactor
247 
248 
249  // Overloading not supported by the ANSI C compiler used for Linux drivers.
250  #if (defined(__CPLUSPLUS__) || defined(__cplusplus)) && !defined(NTV2_BUILDING_DRIVER)
252  { (void) boardID;
253  return XENA2_FRAMEBUFFER_SIZE;
254  }
255  #else
257  { (void) boardID;
258  return XENA2_FRAMEBUFFER_SIZE;
259  }
260  #endif
261 
262  #if (defined(__CPLUSPLUS__) || defined(__cplusplus)) && !defined(NTV2_BUILDING_DRIVER)
264  #else
266  #endif
267  {
268  if (NTV2DeviceCanDoStackedAudio(boardID))
269  {
270  ULWord totalFrames = NTV2DeviceGetActiveMemorySize(boardID)/0x800000;
271  totalFrames -= NTV2DeviceGetNumAudioSystems(boardID)*(NTV2DeviceCanDo12gRouting(boardID) ? 4 : 1);
272  if(boardID == DEVICE_ID_IOX3 || boardID == DEVICE_ID_KONA5_8K_MV_TX)
273  totalFrames -= 6;
274  return totalFrames;
275  }
276  else switch (boardID)
277  {
278  case DEVICE_ID_IOEXPRESS: // EOL
280  case DEVICE_ID_TTAP: // EOL
281  return 16;
282  case DEVICE_ID_KONALHIDVI: // EOL
283  case DEVICE_ID_KONALHI:
284  case DEVICE_ID_CORVID1: // EOL
285  case DEVICE_ID_CORVID3G: // EOL
286  return 32;
287  case DEVICE_ID_IOXT: // EOL
288  return 24;
289  case DEVICE_ID_CORVID22: // EOL
290  return 64;
291  case DEVICE_ID_KONA3G: // EOL
292  return 56; // ufc uses 8
293  default:
294  return 0;
295  }
296  }
297 
298 
299  #if (defined(__CPLUSPLUS__) || defined(__cplusplus)) && !defined(NTV2_BUILDING_DRIVER)
301  {
302  return (NTV2DeviceGetNumberFrameBuffers(boardID) - NTV2DeviceGetNumAudioSystems(boardID)); // audio base is 2 MB buffer at top - 2MB (16 - 1 for 2 MB buffers)
303  }
304  #else
306  {
307  return (NTV2DeviceGetNumberFrameBuffers_Ex(boardID) - NTV2DeviceGetNumAudioSystems(boardID)); // audio base is 2 MB buffer at top - 2MB (16 - 1 for 2 MB buffers)
308  }
309  #endif // #if (defined(__CPLUSPLUS__) || defined(__cplusplus)) && !defined(NTV2_BUILDING_DRIVER)
310 
311 
312  #if (defined(__CPLUSPLUS__) || defined(__cplusplus)) && !defined(NTV2_BUILDING_DRIVER)
314  {
315  return (NTV2DeviceGetNumberFrameBuffers(boardID)-2);
316  }
317  #else
319  {
320  return (NTV2DeviceGetNumberFrameBuffers_Ex(boardID)-2);
321  }
322  #endif // #if defined(__CPLUSPLUS__) || defined(__cplusplus)
323 
324 
326  {
327  ULWord multiplier = 1; // default
328  switch (id)
329  {
330  case DEVICE_ID_TTAP:
331  break;
332  // based on FrameGeometry
334  case DEVICE_ID_KONALHI:
336  case DEVICE_ID_IOEXPRESS:
337  case DEVICE_ID_CORVID1:
338  case DEVICE_ID_CORVID22:
339  case DEVICE_ID_CORVID3G:
340  case DEVICE_ID_IOXT:
341  case DEVICE_ID_KONA1:
342  case DEVICE_ID_IOX3:
343  switch (fg)
344  {
345  case NTV2_FG_2048x1080:
346  case NTV2_FG_2048x1556:
347  case NTV2_FG_2048x1588:
348  case NTV2_FG_1920x1112:
349  case NTV2_FG_2048x1112:
350  multiplier = 2;
351  break;
352  default:
353  break;
354  }
355  break;
356  case DEVICE_ID_KONA3G:
358  case DEVICE_ID_CORVID24:
359  case DEVICE_ID_IO4K:
360  case DEVICE_ID_IO4KUFC:
361  case DEVICE_ID_KONA4:
362  case DEVICE_ID_KONA4UFC:
363  case DEVICE_ID_CORVID88:
364  case DEVICE_ID_CORVID44:
366  case DEVICE_ID_CORVIDHBR:
372  case DEVICE_ID_IO4KPLUS:
373  case DEVICE_ID_IOIP_2022:
374  case DEVICE_ID_IOIP_2110:
378  case DEVICE_ID_KONAHDMI:
379  case DEVICE_ID_KONA5:
381  case DEVICE_ID_KONA5_8K:
384  case DEVICE_ID_KONA5_OE1:
385  case DEVICE_ID_KONA5_OE2:
386  case DEVICE_ID_KONA5_OE3:
387  case DEVICE_ID_KONA5_OE4:
388  case DEVICE_ID_KONA5_OE5:
389  case DEVICE_ID_KONA5_OE6:
390  case DEVICE_ID_KONA5_OE7:
391  case DEVICE_ID_KONA5_OE8:
392  case DEVICE_ID_KONA5_OE9:
396  case DEVICE_ID_SOJI_OE1:
397  case DEVICE_ID_SOJI_OE2:
398  case DEVICE_ID_SOJI_OE3:
399  case DEVICE_ID_SOJI_OE4:
400  case DEVICE_ID_SOJI_OE5:
401  case DEVICE_ID_SOJI_OE6:
402  case DEVICE_ID_SOJI_OE7:
410  case DEVICE_ID_TTAP_PRO:
411  case DEVICE_ID_KONAX:
413  case DEVICE_ID_IP25_R:
414  case DEVICE_ID_IP25_T:
415  switch (fg)
416  {
417  case NTV2_FG_4x3840x2160:
419  multiplier = 32;
420  else
421  multiplier = 16;
422  break;
423  case NTV2_FG_4x4096x2160:
424  switch(fbf)
425  {
426  case NTV2_FBF_48BIT_RGB:
428  case NTV2_FBF_10BIT_ARGB:
429  case NTV2_FBF_ARGB:
430  case NTV2_FBF_RGBA:
431  case NTV2_FBF_10BIT_RGB:
432  case NTV2_FBF_ABGR:
433  case NTV2_FBF_10BIT_DPX:
435  multiplier = 32;
436  break;
437  default:
438  multiplier = 16;
439  break;
440  }
441  break;
442  case NTV2_FG_4x1920x1080:
444  multiplier = 8;
445  else
446  multiplier = 4;
447  break;
448  case NTV2_FG_1920x1080:
449  if( fbf == NTV2_FBF_10BIT_ARGB ||
450  fbf == NTV2_FBF_16BIT_ARGB ||
451  fbf == NTV2_FBF_48BIT_RGB ||
453  multiplier = 2;
454  break;
455  case NTV2_FG_4x2048x1080:
456  switch(fbf)
457  {
458  case NTV2_FBF_48BIT_RGB:
460  case NTV2_FBF_10BIT_ARGB:
461  case NTV2_FBF_ARGB:
462  case NTV2_FBF_RGBA:
463  case NTV2_FBF_10BIT_RGB:
464  case NTV2_FBF_ABGR:
465  case NTV2_FBF_10BIT_DPX:
467  multiplier = 8;
468  break;
469  default:
470  multiplier = 4;
471  break;
472  }
473  break;
474  case NTV2_FG_2048x1080:
475  case NTV2_FG_2048x1556:
476  case NTV2_FG_2048x1588:
477  case NTV2_FG_1920x1112:
478  case NTV2_FG_1920x1114:
479  case NTV2_FG_2048x1112:
480  case NTV2_FG_2048x1114:
481  if(fbf == NTV2_FBF_16BIT_ARGB)
482  multiplier = 4;
483  else
484  multiplier = 2;
485  break;
486  default:
487  break;
488  }
489  break;
490  default:
491  break;
492  } // switch
493 
494  return XENA2_FRAMEBUFFER_SIZE * multiplier;
495  } // NTV2DeviceGetFrameBufferSize
496 
497 
499  {
500  ULWord divisor = 1; // default
501  switch (id)
502  {
503  case DEVICE_ID_TTAP:
504  break;
505  // based on FrameGeometry
507  case DEVICE_ID_KONALHI:
509  case DEVICE_ID_IOEXPRESS:
510  case DEVICE_ID_CORVID1:
511  case DEVICE_ID_CORVID22:
512  case DEVICE_ID_CORVID3G:
513  case DEVICE_ID_IOXT:
514  case DEVICE_ID_KONA1:
515  case DEVICE_ID_IOX3:
516  switch (fg)
517  {
518  case NTV2_FG_2048x1080:
519  case NTV2_FG_2048x1556:
520  case NTV2_FG_2048x1588:
521  case NTV2_FG_1920x1112:
522  case NTV2_FG_2048x1112:
523  divisor = 2;
524  break;
525  default:
526  break;
527  }
528  break;
529  case DEVICE_ID_KONA3G:
531  case DEVICE_ID_CORVID24:
532  case DEVICE_ID_IO4K:
533  case DEVICE_ID_IO4KUFC:
534  case DEVICE_ID_KONA4:
535  case DEVICE_ID_KONA4UFC:
536  case DEVICE_ID_CORVID88:
537  case DEVICE_ID_CORVID44:
543  case DEVICE_ID_CORVIDHBR:
545  case DEVICE_ID_IO4KPLUS:
546  case DEVICE_ID_IOIP_2022:
547  case DEVICE_ID_IOIP_2110:
551  case DEVICE_ID_KONAHDMI:
552  case DEVICE_ID_KONA5:
554  case DEVICE_ID_KONA5_8K:
557  case DEVICE_ID_KONA5_OE1:
558  case DEVICE_ID_KONA5_OE2:
559  case DEVICE_ID_KONA5_OE3:
560  case DEVICE_ID_KONA5_OE4:
561  case DEVICE_ID_KONA5_OE5:
562  case DEVICE_ID_KONA5_OE6:
563  case DEVICE_ID_KONA5_OE7:
564  case DEVICE_ID_KONA5_OE8:
565  case DEVICE_ID_KONA5_OE9:
569  case DEVICE_ID_SOJI_OE1:
570  case DEVICE_ID_SOJI_OE2:
571  case DEVICE_ID_SOJI_OE3:
572  case DEVICE_ID_SOJI_OE4:
573  case DEVICE_ID_SOJI_OE5:
574  case DEVICE_ID_SOJI_OE6:
575  case DEVICE_ID_SOJI_OE7:
583  case DEVICE_ID_TTAP_PRO:
584  case DEVICE_ID_KONAX:
586  case DEVICE_ID_IP25_R:
587  case DEVICE_ID_IP25_T:
588  switch (fg)
589  {
590  case NTV2_FG_4x1920x1080:
591  case NTV2_FG_1920x1080:
592  if (fbf == NTV2_FBF_10BIT_ARGB || fbf == NTV2_FBF_16BIT_ARGB
593  || fbf == NTV2_FBF_48BIT_RGB || fbf == NTV2_FBF_12BIT_RGB_PACKED)
594  divisor = 2;
595  break;
596  case NTV2_FG_4x2048x1080:
597  case NTV2_FG_2048x1080:
598  case NTV2_FG_2048x1556:
599  case NTV2_FG_2048x1588:
600  case NTV2_FG_1920x1112:
601  case NTV2_FG_1920x1114:
602  case NTV2_FG_2048x1112:
603  case NTV2_FG_2048x1114:
604  if (fbf == NTV2_FBF_16BIT_ARGB)
605  divisor = 4;
606  else
607  divisor = 2;
608  break;
609  default:
610  break;
611  } // switch
612  if (fg == NTV2_FG_4x1920x1080 || fg == NTV2_FG_4x2048x1080)
613  divisor *= 4;
614  if (fg == NTV2_FG_4x3840x2160 || fg == NTV2_FG_4x4096x2160)
615  divisor *= 16;
616  break;
617  default:
618  break;
619  } // switch
620 
621  if ( fbf == NTV2_FBF_48BIT_RGB || fbf == NTV2_FBF_12BIT_RGB_PACKED )
622  divisor *= 2;
623 
624  #if (defined(__CPLUSPLUS__) || defined(__cplusplus)) && !defined(NTV2_BUILDING_DRIVER)
625  return divisor ? NTV2DeviceGetNumberFrameBuffers(id) / divisor : 0;
626  #else
627  return divisor ? NTV2DeviceGetNumberFrameBuffers_Ex(id) / divisor : 0;
628  #endif
629  } // NTV2DeviceGetNumberFrameBuffers
630 #endif // !defined(NTV2_DEPRECATE_17_2)
631 
633 {
634  ULWord activeMemorySize = NTV2DeviceGetActiveMemorySize(inDeviceID);
635  ULWord numAudioSystems = NTV2DeviceGetNumAudioSystems(inDeviceID);
636  ULWord numAudioBytes = 0;
637  ULWord hwBytesPerFrame = 0;
638  ULWord videoMemorySize = 0;
639 
640  static const ULWord gFrameSizeToByteCount[NTV2_MAX_NUM_Framesizes] = { 2 /* NTV2_FRAMESIZE_2MB */, 4 /* NTV2_FRAMESIZE_4MB */, 8 /* NTV2_FRAMESIZE_8MB */, 16 /* NTV2_FRAMESIZE_16MB */,
641  6 /* NTV2_FRAMESIZE_6MB */, 10 /* NTV2_FRAMESIZE_10MB */, 12 /* NTV2_FRAMESIZE_12MB */, 14 /* NTV2_FRAMESIZE_14MB */,
642  18 /* NTV2_FRAMESIZE_18MB */, 20 /* NTV2_FRAMESIZE_20MB */, 22 /* NTV2_FRAMESIZE_22MB */, 24 /* NTV2_FRAMESIZE_24MB */,
643  26 /* NTV2_FRAMESIZE_26MB */, 28 /* NTV2_FRAMESIZE_28MB */, 30 /* NTV2_FRAMESIZE_30MB */, 32 /* NTV2_FRAMESIZE_32MB */};
644  if (inFrameSize < NTV2_MAX_NUM_Framesizes)
645  hwBytesPerFrame = gFrameSizeToByteCount [inFrameSize] * 1024 * 1024;
646 
647 
648  numAudioSystems += NTV2DeviceCanDoAudioMixer(inDeviceID) ? 2 : 0;
649  numAudioBytes = numAudioSystems * (NTV2DeviceCanDoStackedAudio(inDeviceID) ? 0x800000 : hwBytesPerFrame);
650  videoMemorySize = activeMemorySize - numAudioBytes;
651  hwBytesPerFrame *= NTV2_IS_QUAD_FRAME_GEOMETRY(inFrameGeometry) ? 4 : 1;
652  hwBytesPerFrame *= NTV2_IS_QUAD_QUAD_FRAME_GEOMETRY(inFrameGeometry) ? 8 : 1;
653  return hwBytesPerFrame ? videoMemorySize / hwBytesPerFrame : 0;
654 }
655 
656 
658 {
659  return (NTV2DeviceGetNumberFrameBuffers (boardID, inFrameGeometry, frameFormat) - 1); // audio base is 2 MB buffer at top -2MB (16-1 for 2MB buffers)
660 }
661 
662 
664 {
665  return (NTV2DeviceGetNumberFrameBuffers (boardID, inFrameGeometry, frameFormat) - 2);
666 }
667 
668 
670  const NTV2FrameRate inFrameRate,
671  const NTV2FrameGeometry inFrameGeometry,
672  const NTV2Standard inStandard,
673  const ULWord inIsSMPTE372Enabled)
674 {
675  return NTV2DeviceGetVideoFormatFromState_Ex (pOutValue, inFrameRate, inFrameGeometry, inStandard, inIsSMPTE372Enabled, false);
676 }
677 
679  const NTV2FrameRate inFrameRate,
680  const NTV2FrameGeometry inFrameGeometry,
681  const NTV2Standard inStandard,
682  const ULWord inIsSMPTE372Enabled,
683  const bool inIsProgressivePicture)
684 {
685  return NTV2DeviceGetVideoFormatFromState_Ex2 (pOutValue, inFrameRate, inFrameGeometry, inStandard, inIsSMPTE372Enabled, inIsProgressivePicture, true);
686 }
687 
689  const NTV2FrameRate inFrameRate,
690  const NTV2FrameGeometry inFrameGeometry,
691  const NTV2Standard inStandard,
692  const ULWord inIsSMPTE372Enabled,
693  const bool inIsProgressivePicture,
694  const bool inIsSquareDivision)
695 {
696  if (!pOutValue)
697  return false;
698 
699  *pOutValue = NTV2_FORMAT_UNKNOWN;
700 
701  switch (inStandard)
702  {
703  case NTV2_STANDARD_525:
704  switch (inFrameRate)
705  {
706  case NTV2_FRAMERATE_2398: *pOutValue = NTV2_FORMAT_525_2398; break;
707  case NTV2_FRAMERATE_2400: *pOutValue = NTV2_FORMAT_525_2400; break;
708  case NTV2_FRAMERATE_2997: *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_525psf_2997 : NTV2_FORMAT_525_5994; break;
709  default: return false;
710  }
711  break;
712 
713  case NTV2_STANDARD_625:
714  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_625psf_2500 : NTV2_FORMAT_625_5000;
715  break;
716 
717  case NTV2_STANDARD_720:
718  switch (inFrameRate)
719  {
720  case NTV2_FRAMERATE_2398: *pOutValue = NTV2_FORMAT_720p_2398; break;
721  case NTV2_FRAMERATE_2500: *pOutValue = NTV2_FORMAT_720p_2500; break;
722  case NTV2_FRAMERATE_5000: *pOutValue = NTV2_FORMAT_720p_5000; break;
723  case NTV2_FRAMERATE_5994: *pOutValue = NTV2_FORMAT_720p_5994; break;
724  case NTV2_FRAMERATE_6000: *pOutValue = NTV2_FORMAT_720p_6000; break;
725  default: return false;
726  }
727  break;
728 
729  case NTV2_STANDARD_1080:
730  case NTV2_STANDARD_3840i:
731  case NTV2_STANDARD_4096i:
732  switch (inFrameRate)
733  {
734  case NTV2_FRAMERATE_2398:
735  if (inIsSMPTE372Enabled)
736  *pOutValue = NTV2_FORMAT_1080p_2K_4795_B;
737  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
738  *pOutValue = NTV2_FORMAT_1080psf_2K_2398;
739  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
740  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2398 : NTV2_FORMAT_3840x2160psf_2398;
741  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
742  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2398 : NTV2_FORMAT_4096x2160psf_2398;
743  else
744  *pOutValue = NTV2_FORMAT_1080psf_2398;
745  break;
746  case NTV2_FRAMERATE_2400:
747  if (inIsSMPTE372Enabled)
748  *pOutValue = NTV2_FORMAT_1080p_2K_4800_B;
749  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
750  *pOutValue = NTV2_FORMAT_1080psf_2K_2400;
751  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
752  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2400 : NTV2_FORMAT_3840x2160psf_2400;
753  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
754  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2400 : NTV2_FORMAT_4096x2160psf_2400;
755  else
756  *pOutValue = NTV2_FORMAT_1080psf_2400;
757  break;
758  case NTV2_FRAMERATE_2500:
759  if (inIsSMPTE372Enabled)
760  {
761  if (inFrameGeometry == NTV2_FG_2048x1080)
762  *pOutValue = NTV2_FORMAT_1080p_2K_5000_B;
763  else
764  *pOutValue = NTV2_FORMAT_1080p_5000_B;
765  }
766  else if (inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
767  *pOutValue = NTV2_FORMAT_1080psf_2K_2500;
768  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
769  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2500 : NTV2_FORMAT_3840x2160psf_2500;
770  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
771  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2500 : NTV2_FORMAT_4096x2160psf_2500;
772  else
773  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_1080psf_2500_2 : NTV2_FORMAT_1080i_5000;
774  break;
775  case NTV2_FRAMERATE_2997:
776  if (inIsSMPTE372Enabled)
777  {
778  if (inFrameGeometry == NTV2_FG_2048x1080)
779  *pOutValue = NTV2_FORMAT_1080p_2K_5994_B;
780  else
781  *pOutValue = NTV2_FORMAT_1080p_5994_B;
782  }
783  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
784  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2997 : NTV2_FORMAT_3840x2160psf_2997;
785  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
786  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2997 : NTV2_FORMAT_4096x2160psf_2997;
787  else
788  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_1080psf_2997_2: NTV2_FORMAT_1080i_5994;
789  break;
790  case NTV2_FRAMERATE_3000:
791  if (inIsSMPTE372Enabled)
792  {
793  if (inFrameGeometry == NTV2_FG_2048x1080)
794  *pOutValue = NTV2_FORMAT_1080p_2K_6000_B;
795  else
796  *pOutValue = NTV2_FORMAT_1080p_6000_B;
797  }
798  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
799  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_3000 : NTV2_FORMAT_3840x2160psf_3000;
800  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
801  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_3000 : NTV2_FORMAT_4096x2160psf_3000;
802  else
803  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_1080psf_3000_2 : NTV2_FORMAT_1080i_6000;
804  break;
805  default:
806  return false;
807  }
808  break;
809 
810  case NTV2_STANDARD_2K:
811  switch (inFrameRate)
812  {
813  case NTV2_FRAMERATE_1498: *pOutValue = NTV2_FORMAT_2K_1498; break;
814  case NTV2_FRAMERATE_1500: *pOutValue = NTV2_FORMAT_2K_1500; break;
815  case NTV2_FRAMERATE_2398: *pOutValue = NTV2_FORMAT_2K_2398; break;
816  case NTV2_FRAMERATE_2400: *pOutValue = NTV2_FORMAT_2K_2400; break;
817  case NTV2_FRAMERATE_2500: *pOutValue = NTV2_FORMAT_2K_2500; break;
818  default: return false;
819  }
820  break;
821 
822  case NTV2_STANDARD_1080p:
827  case NTV2_STANDARD_7680:
828  case NTV2_STANDARD_8192:
829  switch (inFrameRate)
830  {
831  case NTV2_FRAMERATE_2398:
832  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
833  *pOutValue = NTV2_FORMAT_1080p_2K_2398;
834  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
835  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2398 : NTV2_FORMAT_3840x2160p_2398;
836  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
837  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2398 : NTV2_FORMAT_4096x2160p_2398;
838  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
839  *pOutValue = NTV2_FORMAT_4x3840x2160p_2398;
840  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
841  *pOutValue = NTV2_FORMAT_4x4096x2160p_2398;
842  else
843  *pOutValue = NTV2_FORMAT_1080p_2398;
844  break;
845  case NTV2_FRAMERATE_2400:
846  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
847  *pOutValue = NTV2_FORMAT_1080p_2K_2400;
848  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
849  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2400 : NTV2_FORMAT_3840x2160p_2400;
850  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
851  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2400 : NTV2_FORMAT_4096x2160p_2400;
852  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
853  *pOutValue = NTV2_FORMAT_4x3840x2160p_2400;
854  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
855  *pOutValue = NTV2_FORMAT_4x4096x2160p_2400;
856  else
857  *pOutValue = NTV2_FORMAT_1080p_2400;
858  break;
859  case NTV2_FRAMERATE_2500:
860  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
861  *pOutValue = NTV2_FORMAT_1080p_2K_2500;
862  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
863  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2500 : NTV2_FORMAT_3840x2160p_2500;
864  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
865  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2500 : NTV2_FORMAT_4096x2160p_2500;
866  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
867  *pOutValue = NTV2_FORMAT_4x3840x2160p_2500;
868  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
869  *pOutValue = NTV2_FORMAT_4x4096x2160p_2500;
870  else
871  *pOutValue = NTV2_FORMAT_1080p_2500;
872  break;
873  case NTV2_FRAMERATE_2997:
874  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
875  *pOutValue = NTV2_FORMAT_1080p_2K_2997;
876  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
877  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2997 : NTV2_FORMAT_3840x2160p_2997;
878  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
879  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2997 : NTV2_FORMAT_4096x2160p_2997;
880  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
881  *pOutValue = NTV2_FORMAT_4x3840x2160p_2997;
882  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
883  *pOutValue = NTV2_FORMAT_4x4096x2160p_2997;
884  else
885  *pOutValue = NTV2_FORMAT_1080p_2997;
886  break;
887  case NTV2_FRAMERATE_3000:
888  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
889  *pOutValue = NTV2_FORMAT_1080p_2K_3000;
890  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
891  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_3000 : NTV2_FORMAT_3840x2160p_3000;
892  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
893  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_3000 : NTV2_FORMAT_4096x2160p_3000;
894  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
895  *pOutValue = NTV2_FORMAT_4x3840x2160p_3000;
896  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
897  *pOutValue = NTV2_FORMAT_4x4096x2160p_3000;
898  else
899  *pOutValue = NTV2_FORMAT_1080p_3000;
900  break;
901  case NTV2_FRAMERATE_4795:
902  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
903  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_4795 : NTV2_FORMAT_4096x2160p_4795;
904  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
905  *pOutValue = NTV2_FORMAT_4x4096x2160p_4795;
906  else
907  *pOutValue = NTV2_FORMAT_1080p_2K_4795_A;
908  break;
909  case NTV2_FRAMERATE_4800:
910  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
911  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_4800 : NTV2_FORMAT_4096x2160p_4800;
912  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
913  *pOutValue = NTV2_FORMAT_4x4096x2160p_4800;
914  else
915  *pOutValue = NTV2_FORMAT_1080p_2K_4800_A;
916  break;
917  case NTV2_FRAMERATE_5000:
918  if ( inFrameGeometry == NTV2_FG_4x1920x1080 )
919  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_5000 : NTV2_FORMAT_3840x2160p_5000;
920  else if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
921  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_5000 : NTV2_FORMAT_4096x2160p_5000;
922  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
923  *pOutValue = NTV2_FORMAT_1080p_2K_5000_A;
924  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
925  *pOutValue = NTV2_FORMAT_4x3840x2160p_5000;
926  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
927  *pOutValue = NTV2_FORMAT_4x4096x2160p_5000;
928  else
929  *pOutValue = NTV2_FORMAT_1080p_5000_A;
930  break;
931  case NTV2_FRAMERATE_5994:
932  if ( inFrameGeometry == NTV2_FG_4x1920x1080 )
933  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_5994 : NTV2_FORMAT_3840x2160p_5994;
934  else if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
935  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_5994 : NTV2_FORMAT_4096x2160p_5994;
936  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
937  *pOutValue = NTV2_FORMAT_1080p_2K_5994_A;
938  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
939  *pOutValue = NTV2_FORMAT_4x3840x2160p_5994;
940  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
941  *pOutValue = NTV2_FORMAT_4x4096x2160p_5994;
942  else
943  *pOutValue = NTV2_FORMAT_1080p_5994_A;
944  break;
945  case NTV2_FRAMERATE_6000:
946  if ( inFrameGeometry == NTV2_FG_4x1920x1080 )
947  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_6000 : NTV2_FORMAT_3840x2160p_6000;
948  else if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
949  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_6000 : NTV2_FORMAT_4096x2160p_6000;
950  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
951  *pOutValue = NTV2_FORMAT_1080p_2K_6000_A;
952  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
953  *pOutValue = NTV2_FORMAT_4x3840x2160p_6000;
954  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
955  *pOutValue = NTV2_FORMAT_4x4096x2160p_6000;
956  else
957  *pOutValue = NTV2_FORMAT_1080p_6000_A;
958  break;
960  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
961  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_11988 : NTV2_FORMAT_4096x2160p_11988;
962  break;
964  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
965  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_12000 : NTV2_FORMAT_4096x2160p_12000;
966  break;
967  default:
968  return false;
969  }
970  break;
971 
973  case NTV2_STANDARD_2Kx1080i: return false;
974 
975 #if defined(_DEBUG)
976  case NTV2_NUM_STANDARDS: return false;
977 #else
978  default: return false;
979 #endif
980  }
981 
982  return true;
983 }
984 
985 
986 #define MAX_OF(__a__,__b__) ((__a__) > (__b__) ? (__a__) : (__b__))
987 
988 bool NTV2DeviceCanDoTCIndex (const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
989 {
990  UWord maxNumLTCs = MAX_OF(NTV2DeviceGetNumLTCInputs(inDeviceID), NTV2DeviceGetNumLTCOutputs(inDeviceID));
991  UWord maxNumSDIs = MAX_OF(NTV2DeviceGetNumVideoInputs(inDeviceID), NTV2DeviceGetNumVideoOutputs(inDeviceID));
992 
993  if (NTV2_IS_ATC_VITC2_TIMECODE_INDEX(inTCIndex) && !NTV2DeviceCanDoVITC2(inDeviceID))
994  return false; // Can't do VITC2
995 
996  switch (inTCIndex)
997  {
998  case NTV2_TCINDEX_DEFAULT: return true; // All devices support this index
999 
1000  case NTV2_TCINDEX_LTC1: return maxNumLTCs > 0;
1001  case NTV2_TCINDEX_LTC2: return maxNumLTCs > 1;
1002 
1003  case NTV2_TCINDEX_SDI1:
1004  case NTV2_TCINDEX_SDI1_LTC:
1005  case NTV2_TCINDEX_SDI1_2: return maxNumSDIs > 0;
1006 
1007  case NTV2_TCINDEX_SDI2:
1008  case NTV2_TCINDEX_SDI2_LTC:
1009  case NTV2_TCINDEX_SDI2_2: return maxNumSDIs > 1;
1010 
1011  case NTV2_TCINDEX_SDI3:
1012  case NTV2_TCINDEX_SDI3_LTC:
1013  case NTV2_TCINDEX_SDI3_2: return maxNumSDIs > 2;
1014 
1015  case NTV2_TCINDEX_SDI4:
1016  case NTV2_TCINDEX_SDI4_LTC:
1017  case NTV2_TCINDEX_SDI4_2: return maxNumSDIs > 3;
1018 
1019  case NTV2_TCINDEX_SDI5:
1020  case NTV2_TCINDEX_SDI5_LTC:
1021  case NTV2_TCINDEX_SDI5_2: return maxNumSDIs > 4;
1022 
1023  case NTV2_TCINDEX_SDI6:
1024  case NTV2_TCINDEX_SDI6_LTC:
1025  case NTV2_TCINDEX_SDI6_2:
1026  case NTV2_TCINDEX_SDI7:
1027  case NTV2_TCINDEX_SDI7_LTC:
1028  case NTV2_TCINDEX_SDI7_2:
1029  case NTV2_TCINDEX_SDI8:
1030  case NTV2_TCINDEX_SDI8_LTC:
1031  case NTV2_TCINDEX_SDI8_2: return maxNumSDIs > 5;
1032 
1033  default: break;
1034  }
1035  return false;
1036 }
1037 
1038 bool NTV2DeviceCanDoInputTCIndex (const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
1039 {
1040  const UWord maxNumLTCs = NTV2DeviceGetNumLTCInputs(inDeviceID);
1041  const UWord maxNumSDIs = NTV2DeviceGetNumVideoInputs(inDeviceID);
1042 
1043  if (NTV2_IS_ATC_VITC2_TIMECODE_INDEX(inTCIndex) && !NTV2DeviceCanDoVITC2(inDeviceID))
1044  return false; // Can't do VITC2
1045 
1046  switch (inTCIndex)
1047  {
1048  case NTV2_TCINDEX_DEFAULT: return true; // All devices support this index
1049 
1050  case NTV2_TCINDEX_LTC1: return maxNumLTCs > 0;
1051  case NTV2_TCINDEX_LTC2: return maxNumLTCs > 1;
1052 
1053  case NTV2_TCINDEX_SDI1:
1054  case NTV2_TCINDEX_SDI1_LTC:
1055  case NTV2_TCINDEX_SDI1_2: return maxNumSDIs > 0;
1056 
1057  case NTV2_TCINDEX_SDI2:
1058  case NTV2_TCINDEX_SDI2_LTC:
1059  case NTV2_TCINDEX_SDI2_2: return maxNumSDIs > 1;
1060 
1061  case NTV2_TCINDEX_SDI3:
1062  case NTV2_TCINDEX_SDI3_LTC:
1063  case NTV2_TCINDEX_SDI3_2: return maxNumSDIs > 2;
1064 
1065  case NTV2_TCINDEX_SDI4:
1066  case NTV2_TCINDEX_SDI4_LTC:
1067  case NTV2_TCINDEX_SDI4_2: return maxNumSDIs > 3;
1068 
1069  case NTV2_TCINDEX_SDI5:
1070  case NTV2_TCINDEX_SDI5_LTC:
1071  case NTV2_TCINDEX_SDI5_2: return maxNumSDIs > 4;
1072 
1073  case NTV2_TCINDEX_SDI6:
1074  case NTV2_TCINDEX_SDI6_LTC:
1075  case NTV2_TCINDEX_SDI6_2:
1076  case NTV2_TCINDEX_SDI7:
1077  case NTV2_TCINDEX_SDI7_LTC:
1078  case NTV2_TCINDEX_SDI7_2:
1079  case NTV2_TCINDEX_SDI8:
1080  case NTV2_TCINDEX_SDI8_LTC:
1081  case NTV2_TCINDEX_SDI8_2: return maxNumSDIs > 5;
1082 
1083  default: break;
1084  }
1085  return false;
1086 }
1087 
1088 bool NTV2DeviceCanDoOutputTCIndex (const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
1089 {
1090  const UWord maxNumLTCs = NTV2DeviceGetNumLTCOutputs(inDeviceID);
1091  const UWord maxNumSDIs = NTV2DeviceGetNumVideoOutputs(inDeviceID);
1092 
1093  if (NTV2_IS_ATC_VITC2_TIMECODE_INDEX(inTCIndex) && !NTV2DeviceCanDoVITC2(inDeviceID))
1094  return false; // Can't do VITC2
1095 
1096  switch (inTCIndex)
1097  {
1098  case NTV2_TCINDEX_DEFAULT: return true; // All devices support this index
1099 
1100  case NTV2_TCINDEX_LTC1: return maxNumLTCs > 0;
1101  case NTV2_TCINDEX_LTC2: return maxNumLTCs > 1;
1102 
1103  case NTV2_TCINDEX_SDI1:
1104  case NTV2_TCINDEX_SDI1_LTC:
1105  case NTV2_TCINDEX_SDI1_2: return maxNumSDIs > 0;
1106 
1107  case NTV2_TCINDEX_SDI2:
1108  case NTV2_TCINDEX_SDI2_LTC:
1109  case NTV2_TCINDEX_SDI2_2: return maxNumSDIs > 1;
1110 
1111  case NTV2_TCINDEX_SDI3:
1112  case NTV2_TCINDEX_SDI3_LTC:
1113  case NTV2_TCINDEX_SDI3_2: return maxNumSDIs > 2;
1114 
1115  case NTV2_TCINDEX_SDI4:
1116  case NTV2_TCINDEX_SDI4_LTC:
1117  case NTV2_TCINDEX_SDI4_2: return maxNumSDIs > 3;
1118 
1119  case NTV2_TCINDEX_SDI5:
1120  case NTV2_TCINDEX_SDI5_LTC:
1121  case NTV2_TCINDEX_SDI5_2: return maxNumSDIs > 4;
1122 
1123  case NTV2_TCINDEX_SDI6:
1124  case NTV2_TCINDEX_SDI6_LTC:
1125  case NTV2_TCINDEX_SDI6_2:
1126  case NTV2_TCINDEX_SDI7:
1127  case NTV2_TCINDEX_SDI7_LTC:
1128  case NTV2_TCINDEX_SDI7_2:
1129  case NTV2_TCINDEX_SDI8:
1130  case NTV2_TCINDEX_SDI8_LTC:
1131  case NTV2_TCINDEX_SDI8_2: return maxNumSDIs > 5;
1132 
1133  default: break;
1134  }
1135  return false;
1136 }
1137 
1139 {
1140  if (NTV2DeviceGetNumAudioSystems(inDeviceID))
1141  return (NTV2AudioSystem)(NTV2DeviceGetNumAudioSystems(inDeviceID) + 1);
1142  return NTV2_AUDIOSYSTEM_INVALID;
1143 }
1144 
1146 {
1147  if (NTV2DeviceGetNumAudioSystems(inDeviceID))
1148  return (NTV2AudioSystem)(NTV2DeviceGetNumAudioSystems(inDeviceID));
1149  else
1150  return NTV2_AUDIOSYSTEM_INVALID;
1151 }
1152 
1154 {
1155  if (NTV2DeviceGetSPIFlashVersion(inDeviceID) >= 3 && NTV2DeviceGetSPIFlashVersion(inDeviceID) <= 6)
1156  return true;
1157  else
1158  return false;
1159 }
1160 
1161 #if !defined(NTV2_DEPRECATE_17_0)
1162  bool NTV2DeviceHasSPIv2 (const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 2;}
1163  bool NTV2DeviceHasSPIv3(const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 3;}
1164  bool NTV2DeviceHasSPIv4(const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 4;}
1165  bool NTV2DeviceHasSPIv5(const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 5;}
1166 
1167  bool NTV2DeviceHasGenlockv2(const NTV2DeviceID devID) {return NTV2DeviceGetGenlockVersion(devID) == 2;}
1168  bool NTV2DeviceHasGenlockv3(const NTV2DeviceID devID) {return NTV2DeviceGetGenlockVersion(devID) == 3;}
1169 
1171 
1175 
1177  bool NTV2DeviceCanDoAudioN(const NTV2DeviceID devID, UWord index0) {return index0 < NTV2DeviceGetNumAudioSystems(devID);}
1178  bool NTV2DeviceCanDoLTCOutN(const NTV2DeviceID devID, UWord index0) {return index0 < NTV2DeviceGetNumLTCOutputs(devID);}
1179  bool NTV2DeviceCanDoLTCInN(const NTV2DeviceID devID, UWord index0) {return index0 < NTV2DeviceGetNumLTCInputs(devID);}
1180  bool NTV2DeviceCanDoRS422N(const NTV2DeviceID devID, const NTV2Channel ch) {return ch < NTV2DeviceGetNumSerialPorts(devID);}
1181 #endif // !defined(NTV2_DEPRECATE_17_0)
1182 
1183 bool work_around_erroneous_compiler_warning (void) {return true;}
NTV2DeviceGetNumLTCInputs
UWord NTV2DeviceGetNumLTCInputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11990
NTV2DeviceHasSPIv5
bool NTV2DeviceHasSPIv5(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1165
NTV2_FORMAT_3840x2160p_6000
@ NTV2_FORMAT_3840x2160p_6000
Definition: ntv2enums.h:648
NTV2_FORMAT_4096x2160psf_2500
@ NTV2_FORMAT_4096x2160psf_2500
Definition: ntv2enums.h:656
DEVICE_ID_KONALHIDVI
@ DEVICE_ID_KONALHIDVI
See KONA LHi.
Definition: ntv2enums.h:77
NTV2_FORMAT_625_5000
@ NTV2_FORMAT_625_5000
Definition: ntv2enums.h:576
NTV2_FORMAT_4x1920x1080p_6000
@ NTV2_FORMAT_4x1920x1080p_6000
Definition: ntv2enums.h:612
NTV2_FG_4x2048x1080
@ NTV2_FG_4x2048x1080
4096x2160, for 4K, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:365
NTV2DeviceGetNumAnalogAudioOutputChannels
UWord NTV2DeviceGetNumAnalogAudioOutputChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10490
NTV2_FORMAT_3840x2160psf_2500
@ NTV2_FORMAT_3840x2160psf_2500
Definition: ntv2enums.h:638
NTV2_FORMAT_1080psf_2398
@ NTV2_FORMAT_1080psf_2398
Definition: ntv2enums.h:548
NTV2_TCINDEX_SDI4
@ NTV2_TCINDEX_SDI4
SDI 4 embedded VITC.
Definition: ntv2enums.h:3942
NTV2_FORMAT_4096x2160p_2400
@ NTV2_FORMAT_4096x2160p_2400
Definition: ntv2enums.h:658
NTV2_FBF_ARGB
@ NTV2_FBF_ARGB
See 8-Bit ARGB, RGBA, ABGR Formats.
Definition: ntv2enums.h:220
NTV2_FORMAT_2K_1498
@ NTV2_FORMAT_2K_1498
Definition: ntv2enums.h:583
NTV2_FORMAT_720p_5000
@ NTV2_FORMAT_720p_5000
Definition: ntv2enums.h:559
NTV2_NUM_STANDARDS
@ NTV2_NUM_STANDARDS
Definition: ntv2enums.h:179
DEVICE_ID_KONAIP_2110
@ DEVICE_ID_KONAIP_2110
See KONA IP.
Definition: ntv2enums.h:70
NTV2_FORMAT_4096x2160p_12000
@ NTV2_FORMAT_4096x2160p_12000
Definition: ntv2enums.h:670
NTV2_Wgt12GSDIOut1
@ NTV2_Wgt12GSDIOut1
Definition: ntv2enums.h:3009
NTV2_OUTPUTDESTINATION_HDMI1
@ NTV2_OUTPUTDESTINATION_HDMI1
Definition: ntv2enums.h:1323
DEVICE_ID_KONAHDMI
@ DEVICE_ID_KONAHDMI
See KONA HDMI.
Definition: ntv2enums.h:66
NTV2_FORMAT_2K_2400
@ NTV2_FORMAT_2K_2400
Definition: ntv2enums.h:586
NTV2_WgtSDIOut2
@ NTV2_WgtSDIOut2
Definition: ntv2enums.h:2924
NTV2_STANDARD_2Kx1080p
@ NTV2_STANDARD_2Kx1080p
Identifies SMPTE HD 2K1080p.
Definition: ntv2enums.h:169
XENA2_FRAMEBUFFER_SIZE
#define XENA2_FRAMEBUFFER_SIZE
Definition: ntv2publicinterface.h:3785
NTV2_FORMAT_4x4096x2160p_4800
@ NTV2_FORMAT_4x4096x2160p_4800
Definition: ntv2enums.h:707
DEVICE_ID_CORVID44_2X4K
@ DEVICE_ID_CORVID44_2X4K
See Corvid 44 12G.
Definition: ntv2enums.h:27
NTV2_FORMAT_4x4096x2160p_2398
@ NTV2_FORMAT_4x4096x2160p_2398
Definition: ntv2enums.h:701
NTV2_FBF_12BIT_RGB_PACKED
@ NTV2_FBF_12BIT_RGB_PACKED
See 12-Bit Packed RGB.
Definition: ntv2enums.h:236
DEVICE_ID_KONA5_OE9
@ DEVICE_ID_KONA5_OE9
See KONA 5.
Definition: ntv2enums.h:62
NTV2_FORMAT_525_5994
@ NTV2_FORMAT_525_5994
Definition: ntv2enums.h:575
NTV2_WgtSDIIn1
@ NTV2_WgtSDIIn1
Definition: ntv2enums.h:2917
NTV2_FG_1920x1114
@ NTV2_FG_1920x1114
1920x1080, NTV2_VANCMODE_TALLER
Definition: ntv2enums.h:351
ntv2devicefeatures.h
Declares device capability functions.
NTV2DeviceGetGenlockVersion
UWord NTV2DeviceGetGenlockVersion(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:9281
NTV2_FG_720x576
@ NTV2_FG_720x576
720x576, for PAL 625i, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:350
NTV2_FG_720x508
@ NTV2_FG_720x508
720x486, for NTSC 525i, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:353
NTV2_FORMAT_4096x2160p_11988
@ NTV2_FORMAT_4096x2160p_11988
Definition: ntv2enums.h:669
NTV2_FORMAT_4096x2160p_2500
@ NTV2_FORMAT_4096x2160p_2500
Definition: ntv2enums.h:659
NTV2_FRAMERATE_1500
@ NTV2_FRAMERATE_1500
15 frames per second
Definition: ntv2enums.h:424
NTV2_TCINDEX_SDI2_2
@ NTV2_TCINDEX_SDI2_2
SDI 2 embedded VITC 2.
Definition: ntv2enums.h:3958
NTV2_FRAMERATE_6000
@ NTV2_FRAMERATE_6000
60 frames per second
Definition: ntv2enums.h:411
NTV2_Wgt12GSDIIn4
@ NTV2_Wgt12GSDIIn4
Definition: ntv2enums.h:3008
NTV2_FORMAT_525psf_2997
@ NTV2_FORMAT_525psf_2997
Definition: ntv2enums.h:579
NTV2Channel
NTV2Channel
These enum values are mostly used to identify a specific widget_framestore. They're also commonly use...
Definition: ntv2enums.h:1353
NTV2_FG_4x4096x2160
@ NTV2_FG_4x4096x2160
8192x4320, for 8K, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:369
NTV2_WgtCSC2
@ NTV2_WgtCSC2
Definition: ntv2enums.h:2912
NTV2_FORMAT_4x2048x1080p_4795
@ NTV2_FORMAT_4x2048x1080p_4795
Definition: ntv2enums.h:616
NTV2_FBF_10BIT_DPX_LE
@ NTV2_FBF_10BIT_DPX_LE
10-Bit DPX Little-Endian
Definition: ntv2enums.h:234
NTV2_FORMAT_4096x2160psf_2398
@ NTV2_FORMAT_4096x2160psf_2398
Definition: ntv2enums.h:654
DEVICE_ID_KONA5
@ DEVICE_ID_KONA5
See KONA 5.
Definition: ntv2enums.h:48
NTV2DeviceCanDo3GOut
bool NTV2DeviceCanDo3GOut(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:53
NTV2_TCINDEX_SDI7_LTC
@ NTV2_TCINDEX_SDI7_LTC
SDI 7 embedded ATC LTC.
Definition: ntv2enums.h:3955
NTV2_STANDARD_1080
@ NTV2_STANDARD_1080
Identifies SMPTE HD 1080i or 1080psf.
Definition: ntv2enums.h:163
NTV2_STANDARD_3840x2160p
@ NTV2_STANDARD_3840x2160p
Identifies Ultra-High-Definition (UHD)
Definition: ntv2enums.h:171
NTV2_FRAMERATE_2997
@ NTV2_FRAMERATE_2997
Fractional rate of 30,000 frames per 1,001 seconds.
Definition: ntv2enums.h:415
NTV2_TCINDEX_SDI8_2
@ NTV2_TCINDEX_SDI8_2
SDI 8 embedded VITC 2.
Definition: ntv2enums.h:3964
NTV2_Wgt3GSDIIn2
@ NTV2_Wgt3GSDIIn2
Definition: ntv2enums.h:2920
NTV2_FORMAT_1080p_2K_6000_B
@ NTV2_FORMAT_1080p_2K_6000_B
Definition: ntv2enums.h:633
NTV2_Wgt3GSDIOut3
@ NTV2_Wgt3GSDIOut3
Definition: ntv2enums.h:2929
NTV2_Wgt3GSDIOut7
@ NTV2_Wgt3GSDIOut7
Definition: ntv2enums.h:2978
NTV2_FBF_RGBA
@ NTV2_FBF_RGBA
See 8-Bit ARGB, RGBA, ABGR Formats.
Definition: ntv2enums.h:221
NTV2_STANDARD_625
@ NTV2_STANDARD_625
Identifies SMPTE SD 625i.
Definition: ntv2enums.h:166
NTV2_FORMAT_1080psf_2K_2398
@ NTV2_FORMAT_1080psf_2K_2398
Definition: ntv2enums.h:557
DEVICE_ID_IOX3
@ DEVICE_ID_IOX3
See Io X3.
Definition: ntv2enums.h:41
NTV2_FG_2048x1080
@ NTV2_FG_2048x1080
2048x1080, for 2Kx1080p, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:357
NTV2_STANDARD_4096HFR
@ NTV2_STANDARD_4096HFR
Identifies high frame-rate 4K.
Definition: ntv2enums.h:174
NTV2_STANDARD_4096x2160p
@ NTV2_STANDARD_4096x2160p
Identifies 4K.
Definition: ntv2enums.h:172
NTV2_FORMAT_1080p_2K_4800_A
@ NTV2_FORMAT_1080p_2K_4800_A
Definition: ntv2enums.h:628
NTV2_FORMAT_4x2048x1080p_11988
@ NTV2_FORMAT_4x2048x1080p_11988
Definition: ntv2enums.h:618
DEVICE_ID_SOJI_OE6
@ DEVICE_ID_SOJI_OE6
Definition: ntv2enums.h:88
NTV2DeviceGetActiveMemorySize
ULWord NTV2DeviceGetActiveMemorySize(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:9002
NTV2_FG_INVALID
@ NTV2_FG_INVALID
Definition: ntv2enums.h:373
NTV2_FRAMERATE_12000
@ NTV2_FRAMERATE_12000
120 frames per second
Definition: ntv2enums.h:422
NTV2_FBF_48BIT_RGB
@ NTV2_FBF_48BIT_RGB
See 48-Bit RGB.
Definition: ntv2enums.h:235
NTV2_OUTPUTDESTINATION_SDI2
@ NTV2_OUTPUTDESTINATION_SDI2
Definition: ntv2enums.h:1325
NTV2DeviceGetAudioFrameBuffer_Ex
ULWord NTV2DeviceGetAudioFrameBuffer_Ex(NTV2DeviceID boardID)
Definition: ntv2devicefeatures.cpp:305
NTV2_FORMAT_1080i_5994
@ NTV2_FORMAT_1080i_5994
Definition: ntv2enums.h:544
DEVICE_ID_CORVID44_8KMK
@ DEVICE_ID_CORVID44_8KMK
See Corvid 44 12G.
Definition: ntv2enums.h:29
NTV2_OUTPUTDESTINATION_SDI3
@ NTV2_OUTPUTDESTINATION_SDI3
Definition: ntv2enums.h:1326
DEVICE_ID_KONAIP_2110_RGB12
@ DEVICE_ID_KONAIP_2110_RGB12
See KONA IP.
Definition: ntv2enums.h:71
NTV2_WgtSDIOut4
@ NTV2_WgtSDIOut4
Definition: ntv2enums.h:2926
DEVICE_ID_CORVID22
@ DEVICE_ID_CORVID22
See Corvid 22.
Definition: ntv2enums.h:23
DEVICE_ID_IOIP_2022
@ DEVICE_ID_IOIP_2022
See Io IP.
Definition: ntv2enums.h:38
NTV2_Wgt12GSDIIn2
@ NTV2_Wgt12GSDIIn2
Definition: ntv2enums.h:3006
NTV2_FORMAT_4x1920x1080psf_3000
@ NTV2_FORMAT_4x1920x1080psf_3000
Definition: ntv2enums.h:605
DEVICE_ID_CORVIDHEVC
@ DEVICE_ID_CORVIDHEVC
See Corvid HEVC.
Definition: ntv2enums.h:33
NTV2_FORMAT_1080p_2K_3000
@ NTV2_FORMAT_1080p_2K_3000
Definition: ntv2enums.h:625
NTV2_FORMAT_4096x2160psf_2997
@ NTV2_FORMAT_4096x2160psf_2997
Definition: ntv2enums.h:662
NTV2_FORMAT_4x2048x1080p_2997
@ NTV2_FORMAT_4x2048x1080p_2997
Definition: ntv2enums.h:606
NTV2_FBF_10BIT_ARGB
@ NTV2_FBF_10BIT_ARGB
10-Bit ARGB
Definition: ntv2enums.h:240
NTV2_IS_QUAD_QUAD_FRAME_GEOMETRY
#define NTV2_IS_QUAD_QUAD_FRAME_GEOMETRY(geom)
Definition: ntv2enums.h:378
NTV2_FBF_10BIT_YCBCRA
@ NTV2_FBF_10BIT_YCBCRA
10-Bit YCbCrA
Definition: ntv2enums.h:233
DEVICE_ID_KONA5_8KMK
@ DEVICE_ID_KONA5_8KMK
See KONA 5.
Definition: ntv2enums.h:49
NTV2_FORMAT_4x4096x2160p_2500
@ NTV2_FORMAT_4x4096x2160p_2500
Definition: ntv2enums.h:703
NTV2DeviceCanDoAudioOut
bool NTV2DeviceCanDoAudioOut(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:23
NTV2DeviceID
NTV2DeviceID
Identifies a specific AJA NTV2 device model number. The NTV2DeviceID is actually the PROM part number...
Definition: ntv2enums.h:20
NTV2_TCINDEX_SDI4_2
@ NTV2_TCINDEX_SDI4_2
SDI 4 embedded VITC 2.
Definition: ntv2enums.h:3960
NTV2_FORMAT_4x4096x2160p_4795
@ NTV2_FORMAT_4x4096x2160p_4795
Definition: ntv2enums.h:706
NTV2_FORMAT_4x1920x1080p_2997
@ NTV2_FORMAT_4x1920x1080p_2997
Definition: ntv2enums.h:602
NTV2_FORMAT_4x1920x1080p_2500
@ NTV2_FORMAT_4x1920x1080p_2500
Definition: ntv2enums.h:595
NTV2_Wgt12GSDIOut3
@ NTV2_Wgt12GSDIOut3
Definition: ntv2enums.h:3011
NTV2_Wgt3GSDIOut1
@ NTV2_Wgt3GSDIOut1
Definition: ntv2enums.h:2927
NTV2_FORMAT_4x2048x1080p_4800
@ NTV2_FORMAT_4x2048x1080p_4800
Definition: ntv2enums.h:617
NTV2FrameBufferFormat
NTV2FrameBufferFormat
Identifies a particular video frame buffer format. See Device Frame Buffer Formats for details.
Definition: ntv2enums.h:215
NTV2_FORMAT_4x3840x2160p_2500
@ NTV2_FORMAT_4x3840x2160p_2500
Definition: ntv2enums.h:690
NTV2DeviceGetNumberFrameBuffers
ULWord NTV2DeviceGetNumberFrameBuffers(NTV2DeviceID id, NTV2FrameGeometry fg, NTV2FrameBufferFormat fbf)
Definition: ntv2devicefeatures.cpp:498
NTV2_TCINDEX_SDI6
@ NTV2_TCINDEX_SDI6
SDI 6 embedded VITC.
Definition: ntv2enums.h:3948
NTV2_FG_720x486
@ NTV2_FG_720x486
720x486, for NTSC 525i and 525p60, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:349
NTV2_IS_ATC_VITC2_TIMECODE_INDEX
#define NTV2_IS_ATC_VITC2_TIMECODE_INDEX(__x__)
Definition: ntv2enums.h:3976
NTV2DeviceGetNumCSCs
UWord NTV2DeviceGetNumCSCs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10955
NTV2DeviceHasSPIv2
bool NTV2DeviceHasSPIv2(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1162
NTV2_Wgt3GSDIIn5
@ NTV2_Wgt3GSDIIn5
Definition: ntv2enums.h:2972
NTV2_FBF_10BIT_DPX
@ NTV2_FBF_10BIT_DPX
See 10-Bit RGB - DPX Format.
Definition: ntv2enums.h:226
NTV2DeviceCanDoOutputDestination
bool NTV2DeviceCanDoOutputDestination(const NTV2DeviceID inDeviceID, const NTV2OutputDest inOutputDest)
Definition: ntv2devicefeatures.cpp:137
NTV2_Wgt3GSDIOut8
@ NTV2_Wgt3GSDIOut8
Definition: ntv2enums.h:2979
DEVICE_ID_SOJI_OE2
@ DEVICE_ID_SOJI_OE2
Definition: ntv2enums.h:84
DEVICE_ID_KONAIP_1RX_1TX_1SFP_J2K
@ DEVICE_ID_KONAIP_1RX_1TX_1SFP_J2K
See KONA IP.
Definition: ntv2enums.h:67
NTV2_FORMAT_4x3840x2160p_2398
@ NTV2_FORMAT_4x3840x2160p_2398
Definition: ntv2enums.h:688
NTV2_Wgt3GSDIOut5
@ NTV2_Wgt3GSDIOut5
Definition: ntv2enums.h:2976
nlohmann::json_abiNLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON_v3_11_NLOHMANN_JSON_VERSION_PATCH::detail::void
j template void())
Definition: json.hpp:4893
NTV2_FRAMERATE_2500
@ NTV2_FRAMERATE_2500
25 frames per second
Definition: ntv2enums.h:416
DEVICE_ID_IO4KUFC
@ DEVICE_ID_IO4KUFC
See Io 4K (UFC Mode).
Definition: ntv2enums.h:36
work_around_erroneous_compiler_warning
bool work_around_erroneous_compiler_warning(void)
Definition: ntv2devicefeatures.cpp:1183
NTV2_FORMAT_1080p_2K_4795_A
@ NTV2_FORMAT_1080p_2K_4795_A
Definition: ntv2enums.h:627
NTV2_FORMAT_3840x2160p_2500
@ NTV2_FORMAT_3840x2160p_2500
Definition: ntv2enums.h:641
NTV2FrameRate
NTV2FrameRate
Identifies a particular video frame rate.
Definition: ntv2enums.h:408
DEVICE_ID_CORVID1
@ DEVICE_ID_CORVID1
See Corvid, Corvid 3G.
Definition: ntv2enums.h:22
NTV2DeviceCanDo292Out
bool NTV2DeviceCanDo292Out(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:41
NTV2OutputDest
enum NTV2OutputDestination NTV2OutputDest
NTV2_FORMAT_2K_2398
@ NTV2_FORMAT_2K_2398
Definition: ntv2enums.h:585
NTV2_FORMAT_4x4096x2160p_2997
@ NTV2_FORMAT_4x4096x2160p_2997
Definition: ntv2enums.h:704
NTV2DeviceCanDoTCIndex
bool NTV2DeviceCanDoTCIndex(const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
Definition: ntv2devicefeatures.cpp:988
NTV2_FRAMERATE_4800
@ NTV2_FRAMERATE_4800
48 frames per second
Definition: ntv2enums.h:420
NTV2DeviceCanDoLTCInN
bool NTV2DeviceCanDoLTCInN(const NTV2DeviceID devID, UWord index0)
Definition: ntv2devicefeatures.cpp:1179
NTV2_FORMAT_4096x2160psf_2400
@ NTV2_FORMAT_4096x2160psf_2400
Definition: ntv2enums.h:655
NTV2_Wgt3GSDIIn1
@ NTV2_Wgt3GSDIIn1
Definition: ntv2enums.h:2919
NTV2DeviceGetNumSerialPorts
UWord NTV2DeviceGetNumSerialPorts(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12641
DEVICE_ID_CORVID44_8K
@ DEVICE_ID_CORVID44_8K
See Corvid 44 12G.
Definition: ntv2enums.h:28
DEVICE_ID_KONAIP_2TX_1SFP_J2K
@ DEVICE_ID_KONAIP_2TX_1SFP_J2K
See KONA IP.
Definition: ntv2enums.h:73
NTV2_TCINDEX_SDI5_2
@ NTV2_TCINDEX_SDI5_2
SDI 5 embedded VITC 2.
Definition: ntv2enums.h:3961
NTV2_FRAMERATE_2400
@ NTV2_FRAMERATE_2400
24 frames per second
Definition: ntv2enums.h:417
NTV2_FORMAT_4x2048x1080psf_2398
@ NTV2_FORMAT_4x2048x1080psf_2398
Definition: ntv2enums.h:596
NTV2_FBF_10BIT_RGB_PACKED
@ NTV2_FBF_10BIT_RGB_PACKED
10-Bit Packed RGB
Definition: ntv2enums.h:239
DEVICE_ID_KONAIP_4CH_2SFP
@ DEVICE_ID_KONAIP_4CH_2SFP
See KONA IP.
Definition: ntv2enums.h:74
NTV2_FORMAT_4x2048x1080p_2398
@ NTV2_FORMAT_4x2048x1080p_2398
Definition: ntv2enums.h:599
MAX_OF
#define MAX_OF(__a__, __b__)
Definition: ntv2devicefeatures.cpp:986
NTV2DeviceCanDoInputTCIndex
bool NTV2DeviceCanDoInputTCIndex(const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
Definition: ntv2devicefeatures.cpp:1038
NTV2_WgtSDIOut1
@ NTV2_WgtSDIOut1
Definition: ntv2enums.h:2923
NTV2_TCINDEX_SDI2_LTC
@ NTV2_TCINDEX_SDI2_LTC
SDI 2 embedded ATC LTC.
Definition: ntv2enums.h:3944
NTV2_FORMAT_1080psf_2K_2500
@ NTV2_FORMAT_1080psf_2K_2500
Definition: ntv2enums.h:569
NTV2_OUTPUTDESTINATION_SDI1
@ NTV2_OUTPUTDESTINATION_SDI1
Definition: ntv2enums.h:1324
NTV2_FORMAT_4x2048x1080psf_2400
@ NTV2_FORMAT_4x2048x1080psf_2400
Definition: ntv2enums.h:597
NTV2_TCINDEX_SDI1_LTC
@ NTV2_TCINDEX_SDI1_LTC
SDI 1 embedded ATC LTC.
Definition: ntv2enums.h:3943
NTV2_Wgt3GSDIOut2
@ NTV2_Wgt3GSDIOut2
Definition: ntv2enums.h:2928
NTV2_FORMAT_1080p_5994_B
@ NTV2_FORMAT_1080p_5994_B
Definition: ntv2enums.h:561
NTV2_FORMAT_1080psf_3000_2
@ NTV2_FORMAT_1080psf_3000_2
Definition: ntv2enums.h:572
NTV2_TCINDEX_SDI1
@ NTV2_TCINDEX_SDI1
SDI 1 embedded VITC.
Definition: ntv2enums.h:3939
NTV2_FORMAT_1080p_2K_2400
@ NTV2_FORMAT_1080p_2K_2400
Definition: ntv2enums.h:556
NTV2_TCINDEX_SDI2
@ NTV2_TCINDEX_SDI2
SDI 2 embedded VITC.
Definition: ntv2enums.h:3940
NTV2_FG_2048x1588
@ NTV2_FG_2048x1588
2048x1556, for 2Kx1556psf film format, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:359
NTV2_FORMAT_525_2398
@ NTV2_FORMAT_525_2398
Definition: ntv2enums.h:577
NTV2DeviceCanDoOutputTCIndex
bool NTV2DeviceCanDoOutputTCIndex(const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
Definition: ntv2devicefeatures.cpp:1088
NTV2_FORMAT_4x2048x1080p_3000
@ NTV2_FORMAT_4x2048x1080p_3000
Definition: ntv2enums.h:607
NTV2_TCINDEX_SDI5
@ NTV2_TCINDEX_SDI5
SDI 5 embedded VITC.
Definition: ntv2enums.h:3947
NTV2Standard
NTV2Standard
Identifies a particular video standard.
Definition: ntv2enums.h:161
NTV2_FORMAT_4096x2160p_4795
@ NTV2_FORMAT_4096x2160p_4795
Definition: ntv2enums.h:664
NTV2_FRAMERATE_2398
@ NTV2_FRAMERATE_2398
Fractional rate of 24,000 frames per 1,001 seconds.
Definition: ntv2enums.h:418
DEVICE_ID_KONA5_8K
@ DEVICE_ID_KONA5_8K
See KONA 5.
Definition: ntv2enums.h:50
DEVICE_ID_KONA3G
@ DEVICE_ID_KONA3G
See KONA 3G (UFC Mode).
Definition: ntv2enums.h:44
ULWord
uint32_t ULWord
Definition: ajatypes.h:276
NTV2_FORMAT_4x4096x2160p_3000
@ NTV2_FORMAT_4x4096x2160p_3000
Definition: ntv2enums.h:705
NTV2DeviceCanDoAudioMixer
bool NTV2DeviceCanDoAudioMixer(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:1803
NTV2DeviceCanDoWidget
bool NTV2DeviceCanDoWidget(const NTV2DeviceID inDeviceID, const NTV2WidgetID inWidgetID)
Definition: ntv2devicefeatures.hpp:32696
NTV2_FORMAT_2K_2500
@ NTV2_FORMAT_2K_2500
Definition: ntv2enums.h:587
DEVICE_ID_SOJI_DIAGS
@ DEVICE_ID_SOJI_DIAGS
Definition: ntv2enums.h:82
DEVICE_ID_CORVID3G
@ DEVICE_ID_CORVID3G
See Corvid, Corvid 3G.
Definition: ntv2enums.h:25
DEVICE_ID_KONAX
@ DEVICE_ID_KONAX
See KONA Xâ„¢.
Definition: ntv2enums.h:78
NTV2_TCINDEX_SDI7_2
@ NTV2_TCINDEX_SDI7_2
SDI 7 embedded VITC 2.
Definition: ntv2enums.h:3963
NTV2_FORMAT_4x2048x1080psf_3000
@ NTV2_FORMAT_4x2048x1080psf_3000
Definition: ntv2enums.h:609
NTV2_FORMAT_1080p_2997
@ NTV2_FORMAT_1080p_2997
Definition: ntv2enums.h:550
DEVICE_ID_KONA5_OE5
@ DEVICE_ID_KONA5_OE5
See KONA 5.
Definition: ntv2enums.h:58
DEVICE_ID_SOJI_OE7
@ DEVICE_ID_SOJI_OE7
Definition: ntv2enums.h:89
NTV2_FORMAT_1080p_2K_4795_B
@ NTV2_FORMAT_1080p_2K_4795_B
Definition: ntv2enums.h:629
NTV2DeviceCanDoAudioN
bool NTV2DeviceCanDoAudioN(const NTV2DeviceID devID, UWord index0)
Definition: ntv2devicefeatures.cpp:1177
DEVICE_ID_KONA4UFC
@ DEVICE_ID_KONA4UFC
See KONA 4 (UFC Mode).
Definition: ntv2enums.h:47
NTV2_FG_720x612
@ NTV2_FG_720x612
720x576, for PAL 625i, NTV2_VANCMODE_TALLER
Definition: ntv2enums.h:362
NTV2_FRAMERATE_1498
@ NTV2_FRAMERATE_1498
Fractional rate of 15,000 frames per 1,001 seconds.
Definition: ntv2enums.h:425
Get8MBFrameSizeFactor
UWord Get8MBFrameSizeFactor(const NTV2FrameGeometry inFG, const NTV2FrameBufferFormat inFBF)
Definition: ntv2devicefeatures.cpp:171
NTV2_FORMAT_1080p_3000
@ NTV2_FORMAT_1080p_3000
Definition: ntv2enums.h:551
NTV2_FORMAT_4x3840x2160p_5994
@ NTV2_FORMAT_4x3840x2160p_5994
Definition: ntv2enums.h:694
DEVICE_ID_KONAIP_1RX_1TX_2110
@ DEVICE_ID_KONAIP_1RX_1TX_2110
See KONA IP.
Definition: ntv2enums.h:68
NTV2DeviceGetHostAudioSystem
NTV2AudioSystem NTV2DeviceGetHostAudioSystem(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1145
NTV2DeviceCanDoAudio6Channels
bool NTV2DeviceCanDoAudio6Channels(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1173
NTV2_FORMAT_4096x2160p_2398
@ NTV2_FORMAT_4096x2160p_2398
Definition: ntv2enums.h:657
NTV2_Wgt3GSDIIn6
@ NTV2_Wgt3GSDIIn6
Definition: ntv2enums.h:2973
NTV2_FORMAT_720p_6000
@ NTV2_FORMAT_720p_6000
Definition: ntv2enums.h:547
NTV2DeviceGetAudioMixerSystem
NTV2AudioSystem NTV2DeviceGetAudioMixerSystem(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1138
DEVICE_ID_SOJI_OE1
@ DEVICE_ID_SOJI_OE1
Definition: ntv2enums.h:83
NTV2_FORMAT_1080p_2500
@ NTV2_FORMAT_1080p_2500
Definition: ntv2enums.h:552
NTV2_FORMAT_3840x2160psf_3000
@ NTV2_FORMAT_3840x2160psf_3000
Definition: ntv2enums.h:645
NTV2TCIndex
NTV2TCIndex
These enum values are indexes into the capture/playout AutoCirculate timecode arrays.
Definition: ntv2enums.h:3936
NTV2_Wgt3GSDIIn8
@ NTV2_Wgt3GSDIIn8
Definition: ntv2enums.h:2975
NTV2DeviceCanDo12GOut
bool NTV2DeviceCanDo12GOut(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:69
NTV2DeviceCanDoColorCorrection
bool NTV2DeviceCanDoColorCorrection(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:157
NTV2_FORMAT_4x2048x1080p_5000
@ NTV2_FORMAT_4x2048x1080p_5000
Definition: ntv2enums.h:613
NTV2_OUTPUTDESTINATION_SDI6
@ NTV2_OUTPUTDESTINATION_SDI6
Definition: ntv2enums.h:1329
NTV2DeviceGetNumVideoInputs
UWord NTV2DeviceGetNumVideoInputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12920
NTV2DeviceGetNumHDMIVideoOutputs
UWord NTV2DeviceGetNumHDMIVideoOutputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11804
NTV2_FORMAT_4096x2160p_6000
@ NTV2_FORMAT_4096x2160p_6000
Definition: ntv2enums.h:668
NTV2_FG_720x514
@ NTV2_FG_720x514
720x486, for NTSC 525i and 525p60, NTV2_VANCMODE_TALLER
Definition: ntv2enums.h:361
NTV2DeviceGetNumLUTs
UWord NTV2DeviceGetNumLUTs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12269
DEVICE_ID_TTAP_PRO
@ DEVICE_ID_TTAP_PRO
See T-TAP Pro.
Definition: ntv2enums.h:91
NTV2DeviceHasColorSpaceConverterOnChannel2
bool NTV2DeviceHasColorSpaceConverterOnChannel2(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1170
NTV2_STANDARD_1080p
@ NTV2_STANDARD_1080p
Identifies SMPTE HD 1080p.
Definition: ntv2enums.h:167
UWord
uint16_t UWord
Definition: ajatypes.h:274
DEVICE_ID_KONAIP_25G
@ DEVICE_ID_KONAIP_25G
See KONA IP25.
Definition: ntv2enums.h:72
NTV2DeviceGetVideoFormatFromState
bool NTV2DeviceGetVideoFormatFromState(NTV2VideoFormat *pOutValue, const NTV2FrameRate inFrameRate, const NTV2FrameGeometry inFrameGeometry, const NTV2Standard inStandard, const ULWord inIsSMPTE372Enabled)
Definition: ntv2devicefeatures.cpp:669
DEVICE_ID_SOJI_OE3
@ DEVICE_ID_SOJI_OE3
Definition: ntv2enums.h:85
NTV2_FORMAT_4x1920x1080p_3000
@ NTV2_FORMAT_4x1920x1080p_3000
Definition: ntv2enums.h:603
NTV2_FORMAT_4x3840x2160p_2997
@ NTV2_FORMAT_4x3840x2160p_2997
Definition: ntv2enums.h:691
NTV2_TCINDEX_SDI7
@ NTV2_TCINDEX_SDI7
SDI 7 embedded VITC.
Definition: ntv2enums.h:3949
NTV2_OUTPUTDESTINATION_SDI8
@ NTV2_OUTPUTDESTINATION_SDI8
Definition: ntv2enums.h:1331
NTV2_FORMAT_1080p_5000_B
@ NTV2_FORMAT_1080p_5000_B
Definition: ntv2enums.h:560
NTV2Framesize
NTV2Framesize
Kona2/Xena2 specific enums.
Definition: ntv2enums.h:2112
NTV2_TCINDEX_SDI5_LTC
@ NTV2_TCINDEX_SDI5_LTC
SDI 5 embedded ATC LTC.
Definition: ntv2enums.h:3953
NTV2_FORMAT_4x3840x2160p_5000
@ NTV2_FORMAT_4x3840x2160p_5000
Definition: ntv2enums.h:693
DEVICE_ID_KONAIP_2022
@ DEVICE_ID_KONAIP_2022
See KONA IP.
Definition: ntv2enums.h:69
NTV2_FORMAT_1080p_2K_5994_A
@ NTV2_FORMAT_1080p_2K_5994_A
Definition: ntv2enums.h:623
NTV2DeviceGetNumberFrameBuffers_Ex
ULWord NTV2DeviceGetNumberFrameBuffers_Ex(NTV2DeviceID boardID)
Definition: ntv2devicefeatures.cpp:265
DEVICE_ID_IOXT
@ DEVICE_ID_IOXT
See Io XT.
Definition: ntv2enums.h:42
NTV2DeviceGetNumHDMIAudioInputChannels
UWord NTV2DeviceGetNumHDMIAudioInputChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11525
NTV2_FORMAT_4x2048x1080p_12000
@ NTV2_FORMAT_4x2048x1080p_12000
Definition: ntv2enums.h:619
DEVICE_ID_KONA5_8K_MV_TX
@ DEVICE_ID_KONA5_8K_MV_TX
See KONA 5.
Definition: ntv2enums.h:51
DEVICE_ID_SOJI_OE4
@ DEVICE_ID_SOJI_OE4
Definition: ntv2enums.h:86
NTV2DeviceGetNumAnalogVideoOutputs
UWord NTV2DeviceGetNumAnalogVideoOutputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10676
DEVICE_ID_KONA5_OE8
@ DEVICE_ID_KONA5_OE8
See KONA 5.
Definition: ntv2enums.h:61
NTV2_Wgt12GSDIOut4
@ NTV2_Wgt12GSDIOut4
Definition: ntv2enums.h:3012
NTV2_FORMAT_625psf_2500
@ NTV2_FORMAT_625psf_2500
Definition: ntv2enums.h:580
DEVICE_ID_KONALHEPLUS
@ DEVICE_ID_KONALHEPLUS
See KONA LHe Plus.
Definition: ntv2enums.h:75
NTV2DeviceGetNumLTCOutputs
UWord NTV2DeviceGetNumLTCOutputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12083
DEVICE_ID_KONA5_OE1
@ DEVICE_ID_KONA5_OE1
See KONA 5.
Definition: ntv2enums.h:54
DEVICE_ID_CORVID88
@ DEVICE_ID_CORVID88
See Corvid 88.
Definition: ntv2enums.h:31
NTV2_FG_1280x720
@ NTV2_FG_1280x720
1280x720, for 720p, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:348
NTV2_FORMAT_1080p_2K_2500
@ NTV2_FORMAT_1080p_2K_2500
Definition: ntv2enums.h:568
NTV2_FORMAT_4x1920x1080psf_2997
@ NTV2_FORMAT_4x1920x1080psf_2997
Definition: ntv2enums.h:604
NTV2_FORMAT_1080p_6000_A
@ NTV2_FORMAT_1080p_6000_A
Definition: ntv2enums.h:567
NTV2_FORMAT_3840x2160psf_2398
@ NTV2_FORMAT_3840x2160psf_2398
Definition: ntv2enums.h:636
NTV2_TCINDEX_SDI4_LTC
@ NTV2_TCINDEX_SDI4_LTC
SDI 4 embedded ATC LTC.
Definition: ntv2enums.h:3952
NTV2_TCINDEX_SDI3_2
@ NTV2_TCINDEX_SDI3_2
SDI 3 embedded VITC 2.
Definition: ntv2enums.h:3959
NTV2_FRAMERATE_11988
@ NTV2_FRAMERATE_11988
Fractional rate of 120,000 frames per 1,001 seconds.
Definition: ntv2enums.h:423
NTV2_FORMAT_1080p_2K_2398
@ NTV2_FORMAT_1080p_2K_2398
Definition: ntv2enums.h:555
NTV2_Wgt12GSDIIn3
@ NTV2_Wgt12GSDIIn3
Definition: ntv2enums.h:3007
NTV2DeviceGetAudioFrameBuffer
ULWord NTV2DeviceGetAudioFrameBuffer(NTV2DeviceID boardID, NTV2FrameGeometry inFrameGeometry, NTV2FrameBufferFormat frameFormat)
Definition: ntv2devicefeatures.cpp:657
NTV2_FORMAT_3840x2160p_2997
@ NTV2_FORMAT_3840x2160p_2997
Definition: ntv2enums.h:642
NTV2_FORMAT_4096x2160p_4800
@ NTV2_FORMAT_4096x2160p_4800
Definition: ntv2enums.h:665
NTV2_MAX_NUM_Framesizes
@ NTV2_MAX_NUM_Framesizes
Definition: ntv2enums.h:2130
NTV2_FORMAT_1080p_2398
@ NTV2_FORMAT_1080p_2398
Definition: ntv2enums.h:553
NTV2_Wgt3GSDIIn7
@ NTV2_Wgt3GSDIIn7
Definition: ntv2enums.h:2974
NTV2_STANDARD_4096i
@ NTV2_STANDARD_4096i
Identifies 4K psf.
Definition: ntv2enums.h:178
NTV2_FORMAT_3840x2160psf_2400
@ NTV2_FORMAT_3840x2160psf_2400
Definition: ntv2enums.h:637
NTV2_FORMAT_1080psf_2K_2400
@ NTV2_FORMAT_1080psf_2K_2400
Definition: ntv2enums.h:558
NTV2DeviceHasSPIv4
bool NTV2DeviceHasSPIv4(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1164
NTV2_FORMAT_3840x2160p_5994
@ NTV2_FORMAT_3840x2160p_5994
Definition: ntv2enums.h:647
NTV2_FORMAT_4x4096x2160p_2400
@ NTV2_FORMAT_4x4096x2160p_2400
Definition: ntv2enums.h:702
NTV2DeviceGetNumAudioSystems
UWord NTV2DeviceGetNumAudioSystems(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10769
NTV2DeviceGetFrameBufferSize
ULWord NTV2DeviceGetFrameBufferSize(NTV2DeviceID id, NTV2FrameGeometry fg, NTV2FrameBufferFormat fbf)
Definition: ntv2devicefeatures.cpp:325
NTV2_FORMAT_4x4096x2160p_6000
@ NTV2_FORMAT_4x4096x2160p_6000
Definition: ntv2enums.h:710
NTV2_FORMAT_3840x2160p_2398
@ NTV2_FORMAT_3840x2160p_2398
Definition: ntv2enums.h:639
NTV2_FG_1920x1112
@ NTV2_FG_1920x1112
1920x1080, for 1080i and 1080p, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:355
DEVICE_ID_IOIP_2110
@ DEVICE_ID_IOIP_2110
See Io IP.
Definition: ntv2enums.h:39
DEVICE_ID_KONA5_3DLUT
@ DEVICE_ID_KONA5_3DLUT
See KONA 5.
Definition: ntv2enums.h:53
NTV2DeviceCanDoAudio2Channels
bool NTV2DeviceCanDoAudio2Channels(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1172
NTV2_FORMAT_UNKNOWN
@ NTV2_FORMAT_UNKNOWN
Definition: ntv2enums.h:530
NTV2DeviceCanDoAudio8Channels
bool NTV2DeviceCanDoAudio8Channels(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1174
NTV2_FORMAT_4x1920x1080psf_2398
@ NTV2_FORMAT_4x1920x1080psf_2398
Definition: ntv2enums.h:590
NTV2DeviceCanDo12gRouting
bool NTV2DeviceCanDo12gRouting(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:299
NTV2_STANDARD_2K
@ NTV2_STANDARD_2K
Definition: ntv2enums.h:168
NTV2_FORMAT_1080p_2K_6000_A
@ NTV2_FORMAT_1080p_2K_6000_A
Definition: ntv2enums.h:622
NTV2_FG_720x598
@ NTV2_FG_720x598
720x576, for PAL 625i, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:354
NTV2_TCINDEX_SDI1_2
@ NTV2_TCINDEX_SDI1_2
SDI 1 embedded VITC 2.
Definition: ntv2enums.h:3957
NTV2_Wgt3GSDIOut4
@ NTV2_Wgt3GSDIOut4
Definition: ntv2enums.h:2930
NTV2_TCINDEX_SDI3
@ NTV2_TCINDEX_SDI3
SDI 3 embedded VITC.
Definition: ntv2enums.h:3941
NTV2_IS_QUAD_FRAME_GEOMETRY
#define NTV2_IS_QUAD_FRAME_GEOMETRY(geom)
Definition: ntv2enums.h:381
NTV2_FORMAT_4096x2160p_3000
@ NTV2_FORMAT_4096x2160p_3000
Definition: ntv2enums.h:661
NTV2DeviceGetAudioFrameBuffer2
ULWord NTV2DeviceGetAudioFrameBuffer2(NTV2DeviceID boardID, NTV2FrameGeometry inFrameGeometry, NTV2FrameBufferFormat frameFormat)
Definition: ntv2devicefeatures.cpp:663
NTV2DeviceCanDo292In
bool NTV2DeviceCanDo292In(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:81
NTV2_FORMAT_4x1920x1080psf_2500
@ NTV2_FORMAT_4x1920x1080psf_2500
Definition: ntv2enums.h:592
NTV2_FRAMERATE_5994
@ NTV2_FRAMERATE_5994
Fractional rate of 60,000 frames per 1,001 seconds.
Definition: ntv2enums.h:413
NTV2DeviceHasSPIv3
bool NTV2DeviceHasSPIv3(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1163
NTV2DeviceCanDoRS422N
bool NTV2DeviceCanDoRS422N(const NTV2DeviceID devID, const NTV2Channel ch)
Definition: ntv2devicefeatures.cpp:1180
DEVICE_ID_CORVID24
@ DEVICE_ID_CORVID24
See Corvid 24.
Definition: ntv2enums.h:24
NTV2_FORMAT_4x3840x2160p_2400
@ NTV2_FORMAT_4x3840x2160p_2400
Definition: ntv2enums.h:689
NTV2_STANDARD_525
@ NTV2_STANDARD_525
Identifies SMPTE SD 525i.
Definition: ntv2enums.h:165
DEVICE_ID_KONA1
@ DEVICE_ID_KONA1
See KONA 1.
Definition: ntv2enums.h:43
NTV2_FORMAT_4x2048x1080p_2500
@ NTV2_FORMAT_4x2048x1080p_2500
Definition: ntv2enums.h:601
NTV2_FORMAT_4x1920x1080p_5994
@ NTV2_FORMAT_4x1920x1080p_5994
Definition: ntv2enums.h:611
NTV2_FORMAT_720p_2398
@ NTV2_FORMAT_720p_2398
Definition: ntv2enums.h:563
NTV2_FORMAT_4x4096x2160p_5000
@ NTV2_FORMAT_4x4096x2160p_5000
Definition: ntv2enums.h:708
DEVICE_ID_IO4KPLUS
@ DEVICE_ID_IO4KPLUS
See Io 4K Plus.
Definition: ntv2enums.h:35
NTV2_FORMAT_4x3840x2160p_6000
@ NTV2_FORMAT_4x3840x2160p_6000
Definition: ntv2enums.h:695
NTV2DeviceGetVideoFormatFromState_Ex2
bool NTV2DeviceGetVideoFormatFromState_Ex2(NTV2VideoFormat *pOutValue, const NTV2FrameRate inFrameRate, const NTV2FrameGeometry inFrameGeometry, const NTV2Standard inStandard, const ULWord inIsSMPTE372Enabled, const bool inIsProgressivePicture, const bool inIsSquareDivision)
Definition: ntv2devicefeatures.cpp:688
DEVICE_ID_SOJI_OE5
@ DEVICE_ID_SOJI_OE5
Definition: ntv2enums.h:87
NTV2_STANDARD_3840HFR
@ NTV2_STANDARD_3840HFR
Identifies high frame-rate UHD.
Definition: ntv2enums.h:173
DEVICE_ID_CORVID44
@ DEVICE_ID_CORVID44
See Corvid 44.
Definition: ntv2enums.h:26
NTV2_TCINDEX_LTC2
@ NTV2_TCINDEX_LTC2
Analog LTC 2.
Definition: ntv2enums.h:3946
NTV2_Wgt3GSDIOut6
@ NTV2_Wgt3GSDIOut6
Definition: ntv2enums.h:2977
NTV2_STANDARD_2Kx1080i
@ NTV2_STANDARD_2Kx1080i
Identifies SMPTE HD 2K1080psf.
Definition: ntv2enums.h:170
NTV2DeviceCanDo3GIn
bool NTV2DeviceCanDo3GIn(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:91
NTV2_FORMAT_1080p_5000_A
@ NTV2_FORMAT_1080p_5000_A
Definition: ntv2enums.h:565
DEVICE_ID_KONA4
@ DEVICE_ID_KONA4
See KONA 4 (Quad Mode).
Definition: ntv2enums.h:46
NTV2_FORMAT_4x2048x1080p_6000
@ NTV2_FORMAT_4x2048x1080p_6000
Definition: ntv2enums.h:615
AJAExport
#define AJAExport
Definition: export.h:33
NTV2_FORMAT_3840x2160psf_2997
@ NTV2_FORMAT_3840x2160psf_2997
Definition: ntv2enums.h:644
NTV2VideoFormat
enum _NTV2VideoFormat NTV2VideoFormat
Identifies a particular video format.
NTV2_STANDARD_8192
@ NTV2_STANDARD_8192
Identifies 8K.
Definition: ntv2enums.h:176
ntv2devicefeatures.hpp
Contains implementations of NTV2DeviceCanDo... and NTV2DeviceGetNum... functions. This module is incl...
NTV2_FORMAT_4096x2160p_5000
@ NTV2_FORMAT_4096x2160p_5000
Definition: ntv2enums.h:666
NTV2_TCINDEX_DEFAULT
@ NTV2_TCINDEX_DEFAULT
The "default" timecode (mostly used by the AJA "Retail" service and Control Panel)
Definition: ntv2enums.h:3938
NTV2_FORMAT_1080i_5000
@ NTV2_FORMAT_1080i_5000
Definition: ntv2enums.h:543
NTV2_TCINDEX_SDI6_2
@ NTV2_TCINDEX_SDI6_2
SDI 6 embedded VITC 2.
Definition: ntv2enums.h:3962
NTV2_Wgt12GSDIIn1
@ NTV2_Wgt12GSDIIn1
Definition: ntv2enums.h:3005
NTV2_FORMAT_4x1920x1080p_5000
@ NTV2_FORMAT_4x1920x1080p_5000
Definition: ntv2enums.h:610
NTV2_WgtSDIOut3
@ NTV2_WgtSDIOut3
Definition: ntv2enums.h:2925
NTV2DeviceCanDoStackedAudio
bool NTV2DeviceCanDoStackedAudio(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:5518
NTV2_STANDARD_720
@ NTV2_STANDARD_720
Identifies SMPTE HD 720p.
Definition: ntv2enums.h:164
NTV2_FORMAT_4x1920x1080p_2398
@ NTV2_FORMAT_4x1920x1080p_2398
Definition: ntv2enums.h:593
NTV2_FG_2048x1112
@ NTV2_FG_2048x1112
2048x1080, for 2Kx1080p, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:360
DEVICE_ID_TTAP
@ DEVICE_ID_TTAP
See T-TAP.
Definition: ntv2enums.h:90
NTV2FrameGeometry
NTV2FrameGeometry
Identifies a particular video frame geometry.
Definition: ntv2enums.h:344
NTV2_FORMAT_1080p_6000_B
@ NTV2_FORMAT_1080p_6000_B
Definition: ntv2enums.h:562
DEVICE_ID_KONA5_OE3
@ DEVICE_ID_KONA5_OE3
See KONA 5.
Definition: ntv2enums.h:56
NTV2_FORMAT_4096x2160p_2997
@ NTV2_FORMAT_4096x2160p_2997
Definition: ntv2enums.h:660
true
#define true
Definition: ntv2devicefeatures.h:26
NTV2_TCINDEX_SDI3_LTC
@ NTV2_TCINDEX_SDI3_LTC
SDI 3 embedded ATC LTC.
Definition: ntv2enums.h:3951
NTV2DeviceGetNumberVideoFrameBuffers
ULWord NTV2DeviceGetNumberVideoFrameBuffers(NTV2DeviceID inDeviceID, NTV2FrameGeometry inFrameGeometry, NTV2Framesize inFrameSize)
Definition: ntv2devicefeatures.cpp:632
NTV2_OUTPUTDESTINATION_SDI7
@ NTV2_OUTPUTDESTINATION_SDI7
Definition: ntv2enums.h:1330
NTV2DeviceGetVideoFormatFromState_Ex
bool NTV2DeviceGetVideoFormatFromState_Ex(NTV2VideoFormat *pOutValue, const NTV2FrameRate inFrameRate, const NTV2FrameGeometry inFrameGeometry, const NTV2Standard inStandard, const ULWord inIsSMPTE372Enabled, const bool inIsProgressivePicture)
Definition: ntv2devicefeatures.cpp:678
DEVICE_ID_KONA5_OE7
@ DEVICE_ID_KONA5_OE7
See KONA 5.
Definition: ntv2enums.h:60
NTV2DeviceGetNumHDMIAudioOutputChannels
UWord NTV2DeviceGetNumHDMIAudioOutputChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11618
NTV2_FORMAT_1080p_5994_A
@ NTV2_FORMAT_1080p_5994_A
Definition: ntv2enums.h:566
NTV2_FG_2048x1114
@ NTV2_FG_2048x1114
2048x1080, NTV2_VANCMODE_TALLER
Definition: ntv2enums.h:352
NTV2_Wgt12GSDIOut2
@ NTV2_Wgt12GSDIOut2
Definition: ntv2enums.h:3010
DEVICE_ID_KONA5_OE10
@ DEVICE_ID_KONA5_OE10
See KONA 5.
Definition: ntv2enums.h:63
NTV2_FORMAT_4x2048x1080p_5994
@ NTV2_FORMAT_4x2048x1080p_5994
Definition: ntv2enums.h:614
NTV2_OUTPUTDESTINATION_SDI4
@ NTV2_OUTPUTDESTINATION_SDI4
Definition: ntv2enums.h:1327
NTV2DeviceHasGenlockv3
bool NTV2DeviceHasGenlockv3(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1168
NTV2_FG_4x1920x1080
@ NTV2_FG_4x1920x1080
3840x2160, for UHD, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:363
NTV2_FORMAT_4x3840x2160p_3000
@ NTV2_FORMAT_4x3840x2160p_3000
Definition: ntv2enums.h:692
NTV2_FORMAT_1080p_2K_5994_B
@ NTV2_FORMAT_1080p_2K_5994_B
Definition: ntv2enums.h:632
NTV2_FBF_16BIT_ARGB
@ NTV2_FBF_16BIT_ARGB
16-Bit ARGB
Definition: ntv2enums.h:241
NTV2DeviceGetAudioFrameBuffer2_Ex
ULWord NTV2DeviceGetAudioFrameBuffer2_Ex(NTV2DeviceID boardID)
Definition: ntv2devicefeatures.cpp:318
DEVICE_ID_SOJI_3DLUT
@ DEVICE_ID_SOJI_3DLUT
Definition: ntv2enums.h:81
NTV2DeviceGetNumAudioStreams
UWord NTV2DeviceGetNumAudioStreams(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1176
NTV2DeviceCanDoLTCEmbeddedN
bool NTV2DeviceCanDoLTCEmbeddedN(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:119
DEVICE_ID_KONA3GQUAD
@ DEVICE_ID_KONA3GQUAD
See KONA 3G (Quad Mode).
Definition: ntv2enums.h:45
DEVICE_ID_CORVIDHBR
@ DEVICE_ID_CORVIDHBR
See Corvid HB-R.
Definition: ntv2enums.h:32
NTV2_TCINDEX_SDI8
@ NTV2_TCINDEX_SDI8
SDI 8 embedded VITC.
Definition: ntv2enums.h:3950
NTV2DeviceGetNumVideoOutputs
UWord NTV2DeviceGetNumVideoOutputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:13013
NTV2_FORMAT_3840x2160p_5000
@ NTV2_FORMAT_3840x2160p_5000
Definition: ntv2enums.h:646
NTV2_FORMAT_720p_5994
@ NTV2_FORMAT_720p_5994
Definition: ntv2enums.h:546
NTV2_FORMAT_4096x2160psf_3000
@ NTV2_FORMAT_4096x2160psf_3000
Definition: ntv2enums.h:663
NTV2DeviceHasGenlockv2
bool NTV2DeviceHasGenlockv2(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1167
NTV2_FG_1280x740
@ NTV2_FG_1280x740
1280x720, for 720p, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:356
NTV2_FORMAT_1080p_2K_5000_A
@ NTV2_FORMAT_1080p_2K_5000_A
Definition: ntv2enums.h:626
NTV2_TCINDEX_SDI8_LTC
@ NTV2_TCINDEX_SDI8_LTC
SDI 8 embedded ATC LTC.
Definition: ntv2enums.h:3956
NTV2_FRAMERATE_5000
@ NTV2_FRAMERATE_5000
50 frames per second
Definition: ntv2enums.h:419
NTV2_TCINDEX_SDI6_LTC
@ NTV2_TCINDEX_SDI6_LTC
SDI 6 embedded ATC LTC.
Definition: ntv2enums.h:3954
NTV2DeviceGetNumAnalogAudioInputChannels
UWord NTV2DeviceGetNumAnalogAudioInputChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10397
NTV2_FORMAT_4x2048x1080psf_2500
@ NTV2_FORMAT_4x2048x1080psf_2500
Definition: ntv2enums.h:598
DEVICE_ID_IP25_T
@ DEVICE_ID_IP25_T
Definition: ntv2enums.h:94
NTV2_FBF_10BIT_RGB
@ NTV2_FBF_10BIT_RGB
See 10-Bit RGB Format.
Definition: ntv2enums.h:222
DEVICE_ID_KONA5_OE11
@ DEVICE_ID_KONA5_OE11
See KONA 5.
Definition: ntv2enums.h:64
NTV2_FG_2048x1556
@ NTV2_FG_2048x1556
2048x1556, for 2Kx1556psf film format, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:358
NTV2_FRAMERATE_4795
@ NTV2_FRAMERATE_4795
Fractional rate of 48,000 frames per 1,001 seconds.
Definition: ntv2enums.h:421
NTV2_FORMAT_2K_1500
@ NTV2_FORMAT_2K_1500
Definition: ntv2enums.h:584
NTV2_Wgt3GSDIIn4
@ NTV2_Wgt3GSDIIn4
Definition: ntv2enums.h:2922
NTV2_FRAMERATE_3000
@ NTV2_FRAMERATE_3000
30 frames per second
Definition: ntv2enums.h:414
NTV2AudioSystem
NTV2AudioSystem
Used to identify an Audio System on an NTV2 device. See Audio System Operation for more information.
Definition: ntv2enums.h:3880
NTV2_FORMAT_1080p_2K_5000_B
@ NTV2_FORMAT_1080p_2K_5000_B
Definition: ntv2enums.h:631
DEVICE_ID_IOIP_2110_RGB12
@ DEVICE_ID_IOIP_2110_RGB12
See Io IP.
Definition: ntv2enums.h:40
NTV2_FORMAT_525_2400
@ NTV2_FORMAT_525_2400
Definition: ntv2enums.h:578
NTV2_FG_4x3840x2160
@ NTV2_FG_4x3840x2160
7680x4320, for UHD2, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:367
DEVICE_ID_KONA5_2X4K
@ DEVICE_ID_KONA5_2X4K
See KONA 5.
Definition: ntv2enums.h:52
NTV2_FORMAT_1080psf_2997_2
@ NTV2_FORMAT_1080psf_2997_2
Definition: ntv2enums.h:571
NTV2DeviceCanDoProgrammableCSC
bool NTV2DeviceCanDoProgrammableCSC(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:164
NTV2_TCINDEX_LTC1
@ NTV2_TCINDEX_LTC1
Analog LTC 1.
Definition: ntv2enums.h:3945
NTV2_FORMAT_4x4096x2160p_5994
@ NTV2_FORMAT_4x4096x2160p_5994
Definition: ntv2enums.h:709
NTV2_FORMAT_4x2048x1080p_2400
@ NTV2_FORMAT_4x2048x1080p_2400
Definition: ntv2enums.h:600
NTV2DeviceCanDoAudioIn
bool NTV2DeviceCanDoAudioIn(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:32
NTV2_FORMAT_1080p_2K_4800_B
@ NTV2_FORMAT_1080p_2K_4800_B
Definition: ntv2enums.h:630
DEVICE_ID_KONA5_OE2
@ DEVICE_ID_KONA5_OE2
See KONA 5.
Definition: ntv2enums.h:55
NTV2_STANDARD_7680
@ NTV2_STANDARD_7680
Identifies UHD2.
Definition: ntv2enums.h:175
NTV2_FORMAT_4x1920x1080p_2400
@ NTV2_FORMAT_4x1920x1080p_2400
Definition: ntv2enums.h:594
NTV2_FORMAT_4x1920x1080psf_2400
@ NTV2_FORMAT_4x1920x1080psf_2400
Definition: ntv2enums.h:591
NTV2_FG_1920x1080
@ NTV2_FG_1920x1080
1920x1080, for 1080i and 1080p, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:346
NTV2DeviceCanDo12GIn
bool NTV2DeviceCanDo12GIn(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:107
NTV2_FORMAT_720p_2500
@ NTV2_FORMAT_720p_2500
Definition: ntv2enums.h:564
NTV2_FORMAT_1080psf_2500_2
@ NTV2_FORMAT_1080psf_2500_2
Definition: ntv2enums.h:570
DEVICE_ID_IO4K
@ DEVICE_ID_IO4K
See Io 4K (Quad Mode).
Definition: ntv2enums.h:34
DEVICE_ID_KONALHI
@ DEVICE_ID_KONALHI
See KONA LHi.
Definition: ntv2enums.h:76
NTV2_FORMAT_3840x2160p_2400
@ NTV2_FORMAT_3840x2160p_2400
Definition: ntv2enums.h:640
NTV2_FORMAT_1080p_2400
@ NTV2_FORMAT_1080p_2400
Definition: ntv2enums.h:554
NTV2_FORMAT_1080i_6000
@ NTV2_FORMAT_1080i_6000
Definition: ntv2enums.h:545
DEVICE_ID_KONA5_OE4
@ DEVICE_ID_KONA5_OE4
See KONA 5.
Definition: ntv2enums.h:57
NTV2_FBF_ABGR
@ NTV2_FBF_ABGR
See 8-Bit ARGB, RGBA, ABGR Formats.
Definition: ntv2enums.h:224
DEVICE_ID_IP25_R
@ DEVICE_ID_IP25_R
Definition: ntv2enums.h:93
NTV2_Wgt3GSDIIn3
@ NTV2_Wgt3GSDIIn3
Definition: ntv2enums.h:2921
NTV2DeviceCanDoLTCOutN
bool NTV2DeviceCanDoLTCOutN(const NTV2DeviceID devID, UWord index0)
Definition: ntv2devicefeatures.cpp:1178
NTV2DeviceGetMaxAudioChannels
UWord NTV2DeviceGetMaxAudioChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:9560
NTV2_OUTPUTDESTINATION_SDI5
@ NTV2_OUTPUTDESTINATION_SDI5
Definition: ntv2enums.h:1328
NTV2_STANDARD_3840i
@ NTV2_STANDARD_3840i
Identifies Ultra-High-Definition (UHD) psf.
Definition: ntv2enums.h:177
NTV2_FORMAT_3840x2160p_3000
@ NTV2_FORMAT_3840x2160p_3000
Definition: ntv2enums.h:643
NTV2_FORMAT_1080psf_2400
@ NTV2_FORMAT_1080psf_2400
Definition: ntv2enums.h:549
NTV2DeviceGetFrameBufferSize_Ex
ULWord NTV2DeviceGetFrameBufferSize_Ex(NTV2DeviceID boardID)
Definition: ntv2devicefeatures.cpp:256
NTV2DeviceROMHasBankSelect
bool NTV2DeviceROMHasBankSelect(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1153
NTV2_FORMAT_4096x2160p_5994
@ NTV2_FORMAT_4096x2160p_5994
Definition: ntv2enums.h:667
DEVICE_ID_KONA5_OE6
@ DEVICE_ID_KONA5_OE6
See KONA 5.
Definition: ntv2enums.h:59
DEVICE_ID_KONA5_OE12
@ DEVICE_ID_KONA5_OE12
See KONA 5.
Definition: ntv2enums.h:65
NTV2_OUTPUTDESTINATION_ANALOG1
@ NTV2_OUTPUTDESTINATION_ANALOG1
Definition: ntv2enums.h:1322
NTV2DeviceGetSPIFlashVersion
UWord NTV2DeviceGetSPIFlashVersion(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:13199
NTV2DeviceCanDoVITC2
bool NTV2DeviceCanDoVITC2(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:6081
DEVICE_ID_CORVID44_PLNR
@ DEVICE_ID_CORVID44_PLNR
See Corvid 44 12G.
Definition: ntv2enums.h:30
NTV2_FORMAT_4x2048x1080psf_2997
@ NTV2_FORMAT_4x2048x1080psf_2997
Definition: ntv2enums.h:608
NTV2_WgtSDIIn2
@ NTV2_WgtSDIIn2
Definition: ntv2enums.h:2918
NTV2_AUDIOSYSTEM_INVALID
@ NTV2_AUDIOSYSTEM_INVALID
Definition: ntv2enums.h:3892
NTV2_FORMAT_1080p_2K_2997
@ NTV2_FORMAT_1080p_2K_2997
Definition: ntv2enums.h:624
DEVICE_ID_IOEXPRESS
@ DEVICE_ID_IOEXPRESS
See Io Express.
Definition: ntv2enums.h:37