AJA NTV2 SDK  17.6.0.2675
NTV2 SDK 17.6.0.2675
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  switch (fg)
415  {
416  case NTV2_FG_4x3840x2160:
418  multiplier = 32;
419  else
420  multiplier = 16;
421  break;
422  case NTV2_FG_4x4096x2160:
423  switch(fbf)
424  {
425  case NTV2_FBF_48BIT_RGB:
427  case NTV2_FBF_10BIT_ARGB:
428  case NTV2_FBF_ARGB:
429  case NTV2_FBF_RGBA:
430  case NTV2_FBF_10BIT_RGB:
431  case NTV2_FBF_ABGR:
432  case NTV2_FBF_10BIT_DPX:
434  multiplier = 32;
435  break;
436  default:
437  multiplier = 16;
438  break;
439  }
440  break;
441  case NTV2_FG_4x1920x1080:
443  multiplier = 8;
444  else
445  multiplier = 4;
446  break;
447  case NTV2_FG_1920x1080:
448  if( fbf == NTV2_FBF_10BIT_ARGB ||
449  fbf == NTV2_FBF_16BIT_ARGB ||
450  fbf == NTV2_FBF_48BIT_RGB ||
452  multiplier = 2;
453  break;
454  case NTV2_FG_4x2048x1080:
455  switch(fbf)
456  {
457  case NTV2_FBF_48BIT_RGB:
459  case NTV2_FBF_10BIT_ARGB:
460  case NTV2_FBF_ARGB:
461  case NTV2_FBF_RGBA:
462  case NTV2_FBF_10BIT_RGB:
463  case NTV2_FBF_ABGR:
464  case NTV2_FBF_10BIT_DPX:
466  multiplier = 8;
467  break;
468  default:
469  multiplier = 4;
470  break;
471  }
472  break;
473  case NTV2_FG_2048x1080:
474  case NTV2_FG_2048x1556:
475  case NTV2_FG_2048x1588:
476  case NTV2_FG_1920x1112:
477  case NTV2_FG_1920x1114:
478  case NTV2_FG_2048x1112:
479  case NTV2_FG_2048x1114:
480  if(fbf == NTV2_FBF_16BIT_ARGB)
481  multiplier = 4;
482  else
483  multiplier = 2;
484  break;
485  default:
486  break;
487  }
488  break;
489  default:
490  break;
491  } // switch
492 
493  return XENA2_FRAMEBUFFER_SIZE * multiplier;
494  } // NTV2DeviceGetFrameBufferSize
495 
496 
498  {
499  ULWord divisor = 1; // default
500  switch (id)
501  {
502  case DEVICE_ID_TTAP:
503  break;
504  // based on FrameGeometry
506  case DEVICE_ID_KONALHI:
508  case DEVICE_ID_IOEXPRESS:
509  case DEVICE_ID_CORVID1:
510  case DEVICE_ID_CORVID22:
511  case DEVICE_ID_CORVID3G:
512  case DEVICE_ID_IOXT:
513  case DEVICE_ID_KONA1:
514  case DEVICE_ID_IOX3:
515  switch (fg)
516  {
517  case NTV2_FG_2048x1080:
518  case NTV2_FG_2048x1556:
519  case NTV2_FG_2048x1588:
520  case NTV2_FG_1920x1112:
521  case NTV2_FG_2048x1112:
522  divisor = 2;
523  break;
524  default:
525  break;
526  }
527  break;
528  case DEVICE_ID_KONA3G:
530  case DEVICE_ID_CORVID24:
531  case DEVICE_ID_IO4K:
532  case DEVICE_ID_IO4KUFC:
533  case DEVICE_ID_KONA4:
534  case DEVICE_ID_KONA4UFC:
535  case DEVICE_ID_CORVID88:
536  case DEVICE_ID_CORVID44:
542  case DEVICE_ID_CORVIDHBR:
544  case DEVICE_ID_IO4KPLUS:
545  case DEVICE_ID_IOIP_2022:
546  case DEVICE_ID_IOIP_2110:
550  case DEVICE_ID_KONAHDMI:
551  case DEVICE_ID_KONA5:
553  case DEVICE_ID_KONA5_8K:
556  case DEVICE_ID_KONA5_OE1:
557  case DEVICE_ID_KONA5_OE2:
558  case DEVICE_ID_KONA5_OE3:
559  case DEVICE_ID_KONA5_OE4:
560  case DEVICE_ID_KONA5_OE5:
561  case DEVICE_ID_KONA5_OE6:
562  case DEVICE_ID_KONA5_OE7:
563  case DEVICE_ID_KONA5_OE8:
564  case DEVICE_ID_KONA5_OE9:
568  case DEVICE_ID_SOJI_OE1:
569  case DEVICE_ID_SOJI_OE2:
570  case DEVICE_ID_SOJI_OE3:
571  case DEVICE_ID_SOJI_OE4:
572  case DEVICE_ID_SOJI_OE5:
573  case DEVICE_ID_SOJI_OE6:
574  case DEVICE_ID_SOJI_OE7:
582  case DEVICE_ID_TTAP_PRO:
583  case DEVICE_ID_KONAX:
585  case DEVICE_ID_IP25_R:
586  switch (fg)
587  {
588  case NTV2_FG_4x1920x1080:
589  case NTV2_FG_1920x1080:
590  if (fbf == NTV2_FBF_10BIT_ARGB || fbf == NTV2_FBF_16BIT_ARGB
591  || fbf == NTV2_FBF_48BIT_RGB || fbf == NTV2_FBF_12BIT_RGB_PACKED)
592  divisor = 2;
593  break;
594  case NTV2_FG_4x2048x1080:
595  case NTV2_FG_2048x1080:
596  case NTV2_FG_2048x1556:
597  case NTV2_FG_2048x1588:
598  case NTV2_FG_1920x1112:
599  case NTV2_FG_1920x1114:
600  case NTV2_FG_2048x1112:
601  case NTV2_FG_2048x1114:
602  if (fbf == NTV2_FBF_16BIT_ARGB)
603  divisor = 4;
604  else
605  divisor = 2;
606  break;
607  default:
608  break;
609  } // switch
610  if (fg == NTV2_FG_4x1920x1080 || fg == NTV2_FG_4x2048x1080)
611  divisor *= 4;
612  if (fg == NTV2_FG_4x3840x2160 || fg == NTV2_FG_4x4096x2160)
613  divisor *= 16;
614  break;
615  default:
616  break;
617  } // switch
618 
619  if ( fbf == NTV2_FBF_48BIT_RGB || fbf == NTV2_FBF_12BIT_RGB_PACKED )
620  divisor *= 2;
621 
622  #if (defined(__CPLUSPLUS__) || defined(__cplusplus)) && !defined(NTV2_BUILDING_DRIVER)
623  return divisor ? NTV2DeviceGetNumberFrameBuffers(id) / divisor : 0;
624  #else
625  return divisor ? NTV2DeviceGetNumberFrameBuffers_Ex(id) / divisor : 0;
626  #endif
627  } // NTV2DeviceGetNumberFrameBuffers
628 #endif // !defined(NTV2_DEPRECATE_17_2)
629 
631 {
632  ULWord activeMemorySize = NTV2DeviceGetActiveMemorySize(inDeviceID);
633  ULWord numAudioSystems = NTV2DeviceGetNumAudioSystems(inDeviceID);
634  ULWord numAudioBytes = 0;
635  ULWord hwBytesPerFrame = 0;
636  ULWord videoMemorySize = 0;
637 
638  static const ULWord gFrameSizeToByteCount[NTV2_MAX_NUM_Framesizes] = { 2 /* NTV2_FRAMESIZE_2MB */, 4 /* NTV2_FRAMESIZE_4MB */, 8 /* NTV2_FRAMESIZE_8MB */, 16 /* NTV2_FRAMESIZE_16MB */,
639  6 /* NTV2_FRAMESIZE_6MB */, 10 /* NTV2_FRAMESIZE_10MB */, 12 /* NTV2_FRAMESIZE_12MB */, 14 /* NTV2_FRAMESIZE_14MB */,
640  18 /* NTV2_FRAMESIZE_18MB */, 20 /* NTV2_FRAMESIZE_20MB */, 22 /* NTV2_FRAMESIZE_22MB */, 24 /* NTV2_FRAMESIZE_24MB */,
641  26 /* NTV2_FRAMESIZE_26MB */, 28 /* NTV2_FRAMESIZE_28MB */, 30 /* NTV2_FRAMESIZE_30MB */, 32 /* NTV2_FRAMESIZE_32MB */};
642  if (inFrameSize < NTV2_MAX_NUM_Framesizes)
643  hwBytesPerFrame = gFrameSizeToByteCount [inFrameSize] * 1024 * 1024;
644 
645 
646  numAudioSystems += NTV2DeviceCanDoAudioMixer(inDeviceID) ? 2 : 0;
647  numAudioBytes = numAudioSystems * (NTV2DeviceCanDoStackedAudio(inDeviceID) ? 0x800000 : hwBytesPerFrame);
648  videoMemorySize = activeMemorySize - numAudioBytes;
649  hwBytesPerFrame *= NTV2_IS_QUAD_FRAME_GEOMETRY(inFrameGeometry) ? 4 : 1;
650  hwBytesPerFrame *= NTV2_IS_QUAD_QUAD_FRAME_GEOMETRY(inFrameGeometry) ? 8 : 1;
651  return hwBytesPerFrame ? videoMemorySize / hwBytesPerFrame : 0;
652 }
653 
654 
656 {
657  return (NTV2DeviceGetNumberFrameBuffers (boardID, inFrameGeometry, frameFormat) - 1); // audio base is 2 MB buffer at top -2MB (16-1 for 2MB buffers)
658 }
659 
660 
662 {
663  return (NTV2DeviceGetNumberFrameBuffers (boardID, inFrameGeometry, frameFormat) - 2);
664 }
665 
666 
668  const NTV2FrameRate inFrameRate,
669  const NTV2FrameGeometry inFrameGeometry,
670  const NTV2Standard inStandard,
671  const ULWord inIsSMPTE372Enabled)
672 {
673  return NTV2DeviceGetVideoFormatFromState_Ex (pOutValue, inFrameRate, inFrameGeometry, inStandard, inIsSMPTE372Enabled, false);
674 }
675 
677  const NTV2FrameRate inFrameRate,
678  const NTV2FrameGeometry inFrameGeometry,
679  const NTV2Standard inStandard,
680  const ULWord inIsSMPTE372Enabled,
681  const bool inIsProgressivePicture)
682 {
683  return NTV2DeviceGetVideoFormatFromState_Ex2 (pOutValue, inFrameRate, inFrameGeometry, inStandard, inIsSMPTE372Enabled, inIsProgressivePicture, true);
684 }
685 
687  const NTV2FrameRate inFrameRate,
688  const NTV2FrameGeometry inFrameGeometry,
689  const NTV2Standard inStandard,
690  const ULWord inIsSMPTE372Enabled,
691  const bool inIsProgressivePicture,
692  const bool inIsSquareDivision)
693 {
694  if (!pOutValue)
695  return false;
696 
697  *pOutValue = NTV2_FORMAT_UNKNOWN;
698 
699  switch (inStandard)
700  {
701  case NTV2_STANDARD_525:
702  switch (inFrameRate)
703  {
704  case NTV2_FRAMERATE_2398: *pOutValue = NTV2_FORMAT_525_2398; break;
705  case NTV2_FRAMERATE_2400: *pOutValue = NTV2_FORMAT_525_2400; break;
706  case NTV2_FRAMERATE_2997: *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_525psf_2997 : NTV2_FORMAT_525_5994; break;
707  default: return false;
708  }
709  break;
710 
711  case NTV2_STANDARD_625:
712  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_625psf_2500 : NTV2_FORMAT_625_5000;
713  break;
714 
715  case NTV2_STANDARD_720:
716  switch (inFrameRate)
717  {
718  case NTV2_FRAMERATE_2398: *pOutValue = NTV2_FORMAT_720p_2398; break;
719  case NTV2_FRAMERATE_2500: *pOutValue = NTV2_FORMAT_720p_2500; break;
720  case NTV2_FRAMERATE_5000: *pOutValue = NTV2_FORMAT_720p_5000; break;
721  case NTV2_FRAMERATE_5994: *pOutValue = NTV2_FORMAT_720p_5994; break;
722  case NTV2_FRAMERATE_6000: *pOutValue = NTV2_FORMAT_720p_6000; break;
723  default: return false;
724  }
725  break;
726 
727  case NTV2_STANDARD_1080:
728  case NTV2_STANDARD_3840i:
729  case NTV2_STANDARD_4096i:
730  switch (inFrameRate)
731  {
732  case NTV2_FRAMERATE_2398:
733  if (inIsSMPTE372Enabled)
734  *pOutValue = NTV2_FORMAT_1080p_2K_4795_B;
735  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
736  *pOutValue = NTV2_FORMAT_1080psf_2K_2398;
737  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
738  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2398 : NTV2_FORMAT_3840x2160psf_2398;
739  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
740  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2398 : NTV2_FORMAT_4096x2160psf_2398;
741  else
742  *pOutValue = NTV2_FORMAT_1080psf_2398;
743  break;
744  case NTV2_FRAMERATE_2400:
745  if (inIsSMPTE372Enabled)
746  *pOutValue = NTV2_FORMAT_1080p_2K_4800_B;
747  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
748  *pOutValue = NTV2_FORMAT_1080psf_2K_2400;
749  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
750  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2400 : NTV2_FORMAT_3840x2160psf_2400;
751  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
752  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2400 : NTV2_FORMAT_4096x2160psf_2400;
753  else
754  *pOutValue = NTV2_FORMAT_1080psf_2400;
755  break;
756  case NTV2_FRAMERATE_2500:
757  if (inIsSMPTE372Enabled)
758  {
759  if (inFrameGeometry == NTV2_FG_2048x1080)
760  *pOutValue = NTV2_FORMAT_1080p_2K_5000_B;
761  else
762  *pOutValue = NTV2_FORMAT_1080p_5000_B;
763  }
764  else if (inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
765  *pOutValue = NTV2_FORMAT_1080psf_2K_2500;
766  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
767  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2500 : NTV2_FORMAT_3840x2160psf_2500;
768  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
769  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2500 : NTV2_FORMAT_4096x2160psf_2500;
770  else
771  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_1080psf_2500_2 : NTV2_FORMAT_1080i_5000;
772  break;
773  case NTV2_FRAMERATE_2997:
774  if (inIsSMPTE372Enabled)
775  {
776  if (inFrameGeometry == NTV2_FG_2048x1080)
777  *pOutValue = NTV2_FORMAT_1080p_2K_5994_B;
778  else
779  *pOutValue = NTV2_FORMAT_1080p_5994_B;
780  }
781  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
782  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_2997 : NTV2_FORMAT_3840x2160psf_2997;
783  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
784  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_2997 : NTV2_FORMAT_4096x2160psf_2997;
785  else
786  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_1080psf_2997_2: NTV2_FORMAT_1080i_5994;
787  break;
788  case NTV2_FRAMERATE_3000:
789  if (inIsSMPTE372Enabled)
790  {
791  if (inFrameGeometry == NTV2_FG_2048x1080)
792  *pOutValue = NTV2_FORMAT_1080p_2K_6000_B;
793  else
794  *pOutValue = NTV2_FORMAT_1080p_6000_B;
795  }
796  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
797  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080psf_3000 : NTV2_FORMAT_3840x2160psf_3000;
798  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
799  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080psf_3000 : NTV2_FORMAT_4096x2160psf_3000;
800  else
801  *pOutValue = inIsProgressivePicture ? NTV2_FORMAT_1080psf_3000_2 : NTV2_FORMAT_1080i_6000;
802  break;
803  default:
804  return false;
805  }
806  break;
807 
808  case NTV2_STANDARD_2K:
809  switch (inFrameRate)
810  {
811  case NTV2_FRAMERATE_1498: *pOutValue = NTV2_FORMAT_2K_1498; break;
812  case NTV2_FRAMERATE_1500: *pOutValue = NTV2_FORMAT_2K_1500; break;
813  case NTV2_FRAMERATE_2398: *pOutValue = NTV2_FORMAT_2K_2398; break;
814  case NTV2_FRAMERATE_2400: *pOutValue = NTV2_FORMAT_2K_2400; break;
815  case NTV2_FRAMERATE_2500: *pOutValue = NTV2_FORMAT_2K_2500; break;
816  default: return false;
817  }
818  break;
819 
820  case NTV2_STANDARD_1080p:
825  case NTV2_STANDARD_7680:
826  case NTV2_STANDARD_8192:
827  switch (inFrameRate)
828  {
829  case NTV2_FRAMERATE_2398:
830  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
831  *pOutValue = NTV2_FORMAT_1080p_2K_2398;
832  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
833  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2398 : NTV2_FORMAT_3840x2160p_2398;
834  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
835  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2398 : NTV2_FORMAT_4096x2160p_2398;
836  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
837  *pOutValue = NTV2_FORMAT_4x3840x2160p_2398;
838  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
839  *pOutValue = NTV2_FORMAT_4x4096x2160p_2398;
840  else
841  *pOutValue = NTV2_FORMAT_1080p_2398;
842  break;
843  case NTV2_FRAMERATE_2400:
844  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
845  *pOutValue = NTV2_FORMAT_1080p_2K_2400;
846  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
847  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2400 : NTV2_FORMAT_3840x2160p_2400;
848  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
849  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2400 : NTV2_FORMAT_4096x2160p_2400;
850  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
851  *pOutValue = NTV2_FORMAT_4x3840x2160p_2400;
852  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
853  *pOutValue = NTV2_FORMAT_4x4096x2160p_2400;
854  else
855  *pOutValue = NTV2_FORMAT_1080p_2400;
856  break;
857  case NTV2_FRAMERATE_2500:
858  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
859  *pOutValue = NTV2_FORMAT_1080p_2K_2500;
860  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
861  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2500 : NTV2_FORMAT_3840x2160p_2500;
862  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
863  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2500 : NTV2_FORMAT_4096x2160p_2500;
864  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
865  *pOutValue = NTV2_FORMAT_4x3840x2160p_2500;
866  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
867  *pOutValue = NTV2_FORMAT_4x4096x2160p_2500;
868  else
869  *pOutValue = NTV2_FORMAT_1080p_2500;
870  break;
871  case NTV2_FRAMERATE_2997:
872  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
873  *pOutValue = NTV2_FORMAT_1080p_2K_2997;
874  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
875  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_2997 : NTV2_FORMAT_3840x2160p_2997;
876  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
877  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_2997 : NTV2_FORMAT_4096x2160p_2997;
878  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
879  *pOutValue = NTV2_FORMAT_4x3840x2160p_2997;
880  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
881  *pOutValue = NTV2_FORMAT_4x4096x2160p_2997;
882  else
883  *pOutValue = NTV2_FORMAT_1080p_2997;
884  break;
885  case NTV2_FRAMERATE_3000:
886  if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
887  *pOutValue = NTV2_FORMAT_1080p_2K_3000;
888  else if (inFrameGeometry == NTV2_FG_4x1920x1080)
889  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_3000 : NTV2_FORMAT_3840x2160p_3000;
890  else if (inFrameGeometry == NTV2_FG_4x2048x1080)
891  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_3000 : NTV2_FORMAT_4096x2160p_3000;
892  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
893  *pOutValue = NTV2_FORMAT_4x3840x2160p_3000;
894  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
895  *pOutValue = NTV2_FORMAT_4x4096x2160p_3000;
896  else
897  *pOutValue = NTV2_FORMAT_1080p_3000;
898  break;
899  case NTV2_FRAMERATE_4795:
900  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
901  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_4795 : NTV2_FORMAT_4096x2160p_4795;
902  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
903  *pOutValue = NTV2_FORMAT_4x4096x2160p_4795;
904  else
905  *pOutValue = NTV2_FORMAT_1080p_2K_4795_A;
906  break;
907  case NTV2_FRAMERATE_4800:
908  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
909  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_4800 : NTV2_FORMAT_4096x2160p_4800;
910  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
911  *pOutValue = NTV2_FORMAT_4x4096x2160p_4800;
912  else
913  *pOutValue = NTV2_FORMAT_1080p_2K_4800_A;
914  break;
915  case NTV2_FRAMERATE_5000:
916  if ( inFrameGeometry == NTV2_FG_4x1920x1080 )
917  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_5000 : NTV2_FORMAT_3840x2160p_5000;
918  else if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
919  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_5000 : NTV2_FORMAT_4096x2160p_5000;
920  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
921  *pOutValue = NTV2_FORMAT_1080p_2K_5000_A;
922  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
923  *pOutValue = NTV2_FORMAT_4x3840x2160p_5000;
924  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
925  *pOutValue = NTV2_FORMAT_4x4096x2160p_5000;
926  else
927  *pOutValue = NTV2_FORMAT_1080p_5000_A;
928  break;
929  case NTV2_FRAMERATE_5994:
930  if ( inFrameGeometry == NTV2_FG_4x1920x1080 )
931  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_5994 : NTV2_FORMAT_3840x2160p_5994;
932  else if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
933  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_5994 : NTV2_FORMAT_4096x2160p_5994;
934  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
935  *pOutValue = NTV2_FORMAT_1080p_2K_5994_A;
936  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
937  *pOutValue = NTV2_FORMAT_4x3840x2160p_5994;
938  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
939  *pOutValue = NTV2_FORMAT_4x4096x2160p_5994;
940  else
941  *pOutValue = NTV2_FORMAT_1080p_5994_A;
942  break;
943  case NTV2_FRAMERATE_6000:
944  if ( inFrameGeometry == NTV2_FG_4x1920x1080 )
945  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x1920x1080p_6000 : NTV2_FORMAT_3840x2160p_6000;
946  else if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
947  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_6000 : NTV2_FORMAT_4096x2160p_6000;
948  else if ( inFrameGeometry == NTV2_FG_2048x1080 || inFrameGeometry == NTV2_FG_2048x1112 || inFrameGeometry == NTV2_FG_2048x1114)
949  *pOutValue = NTV2_FORMAT_1080p_2K_6000_A;
950  else if (inFrameGeometry == NTV2_FG_4x3840x2160)
951  *pOutValue = NTV2_FORMAT_4x3840x2160p_6000;
952  else if (inFrameGeometry == NTV2_FG_4x4096x2160)
953  *pOutValue = NTV2_FORMAT_4x4096x2160p_6000;
954  else
955  *pOutValue = NTV2_FORMAT_1080p_6000_A;
956  break;
958  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
959  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_11988 : NTV2_FORMAT_4096x2160p_11988;
960  break;
962  if ( inFrameGeometry == NTV2_FG_4x2048x1080 )
963  *pOutValue = inIsSquareDivision ? NTV2_FORMAT_4x2048x1080p_12000 : NTV2_FORMAT_4096x2160p_12000;
964  break;
965  default:
966  return false;
967  }
968  break;
969 
971  case NTV2_STANDARD_2Kx1080i: return false;
972 
973 #if defined(_DEBUG)
974  case NTV2_NUM_STANDARDS: return false;
975 #else
976  default: return false;
977 #endif
978  }
979 
980  return true;
981 }
982 
983 
984 #define MAX_OF(__a__,__b__) ((__a__) > (__b__) ? (__a__) : (__b__))
985 
986 bool NTV2DeviceCanDoTCIndex (const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
987 {
988  UWord maxNumLTCs = MAX_OF(NTV2DeviceGetNumLTCInputs(inDeviceID), NTV2DeviceGetNumLTCOutputs(inDeviceID));
989  UWord maxNumSDIs = MAX_OF(NTV2DeviceGetNumVideoInputs(inDeviceID), NTV2DeviceGetNumVideoOutputs(inDeviceID));
990 
991  if (NTV2_IS_ATC_VITC2_TIMECODE_INDEX(inTCIndex) && !NTV2DeviceCanDoVITC2(inDeviceID))
992  return false; // Can't do VITC2
993 
994  switch (inTCIndex)
995  {
996  case NTV2_TCINDEX_DEFAULT: return true; // All devices support this index
997 
998  case NTV2_TCINDEX_LTC1: return maxNumLTCs > 0;
999  case NTV2_TCINDEX_LTC2: return maxNumLTCs > 1;
1000 
1001  case NTV2_TCINDEX_SDI1:
1002  case NTV2_TCINDEX_SDI1_LTC:
1003  case NTV2_TCINDEX_SDI1_2: return maxNumSDIs > 0;
1004 
1005  case NTV2_TCINDEX_SDI2:
1006  case NTV2_TCINDEX_SDI2_LTC:
1007  case NTV2_TCINDEX_SDI2_2: return maxNumSDIs > 1;
1008 
1009  case NTV2_TCINDEX_SDI3:
1010  case NTV2_TCINDEX_SDI3_LTC:
1011  case NTV2_TCINDEX_SDI3_2: return maxNumSDIs > 2;
1012 
1013  case NTV2_TCINDEX_SDI4:
1014  case NTV2_TCINDEX_SDI4_LTC:
1015  case NTV2_TCINDEX_SDI4_2: return maxNumSDIs > 3;
1016 
1017  case NTV2_TCINDEX_SDI5:
1018  case NTV2_TCINDEX_SDI5_LTC:
1019  case NTV2_TCINDEX_SDI5_2: return maxNumSDIs > 4;
1020 
1021  case NTV2_TCINDEX_SDI6:
1022  case NTV2_TCINDEX_SDI6_LTC:
1023  case NTV2_TCINDEX_SDI6_2:
1024  case NTV2_TCINDEX_SDI7:
1025  case NTV2_TCINDEX_SDI7_LTC:
1026  case NTV2_TCINDEX_SDI7_2:
1027  case NTV2_TCINDEX_SDI8:
1028  case NTV2_TCINDEX_SDI8_LTC:
1029  case NTV2_TCINDEX_SDI8_2: return maxNumSDIs > 5;
1030 
1031  default: break;
1032  }
1033  return false;
1034 }
1035 
1036 bool NTV2DeviceCanDoInputTCIndex (const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
1037 {
1038  const UWord maxNumLTCs = NTV2DeviceGetNumLTCInputs(inDeviceID);
1039  const UWord maxNumSDIs = NTV2DeviceGetNumVideoInputs(inDeviceID);
1040 
1041  if (NTV2_IS_ATC_VITC2_TIMECODE_INDEX(inTCIndex) && !NTV2DeviceCanDoVITC2(inDeviceID))
1042  return false; // Can't do VITC2
1043 
1044  switch (inTCIndex)
1045  {
1046  case NTV2_TCINDEX_DEFAULT: return true; // All devices support this index
1047 
1048  case NTV2_TCINDEX_LTC1: return maxNumLTCs > 0;
1049  case NTV2_TCINDEX_LTC2: return maxNumLTCs > 1;
1050 
1051  case NTV2_TCINDEX_SDI1:
1052  case NTV2_TCINDEX_SDI1_LTC:
1053  case NTV2_TCINDEX_SDI1_2: return maxNumSDIs > 0;
1054 
1055  case NTV2_TCINDEX_SDI2:
1056  case NTV2_TCINDEX_SDI2_LTC:
1057  case NTV2_TCINDEX_SDI2_2: return maxNumSDIs > 1;
1058 
1059  case NTV2_TCINDEX_SDI3:
1060  case NTV2_TCINDEX_SDI3_LTC:
1061  case NTV2_TCINDEX_SDI3_2: return maxNumSDIs > 2;
1062 
1063  case NTV2_TCINDEX_SDI4:
1064  case NTV2_TCINDEX_SDI4_LTC:
1065  case NTV2_TCINDEX_SDI4_2: return maxNumSDIs > 3;
1066 
1067  case NTV2_TCINDEX_SDI5:
1068  case NTV2_TCINDEX_SDI5_LTC:
1069  case NTV2_TCINDEX_SDI5_2: return maxNumSDIs > 4;
1070 
1071  case NTV2_TCINDEX_SDI6:
1072  case NTV2_TCINDEX_SDI6_LTC:
1073  case NTV2_TCINDEX_SDI6_2:
1074  case NTV2_TCINDEX_SDI7:
1075  case NTV2_TCINDEX_SDI7_LTC:
1076  case NTV2_TCINDEX_SDI7_2:
1077  case NTV2_TCINDEX_SDI8:
1078  case NTV2_TCINDEX_SDI8_LTC:
1079  case NTV2_TCINDEX_SDI8_2: return maxNumSDIs > 5;
1080 
1081  default: break;
1082  }
1083  return false;
1084 }
1085 
1086 bool NTV2DeviceCanDoOutputTCIndex (const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
1087 {
1088  const UWord maxNumLTCs = NTV2DeviceGetNumLTCOutputs(inDeviceID);
1089  const UWord maxNumSDIs = NTV2DeviceGetNumVideoOutputs(inDeviceID);
1090 
1091  if (NTV2_IS_ATC_VITC2_TIMECODE_INDEX(inTCIndex) && !NTV2DeviceCanDoVITC2(inDeviceID))
1092  return false; // Can't do VITC2
1093 
1094  switch (inTCIndex)
1095  {
1096  case NTV2_TCINDEX_DEFAULT: return true; // All devices support this index
1097 
1098  case NTV2_TCINDEX_LTC1: return maxNumLTCs > 0;
1099  case NTV2_TCINDEX_LTC2: return maxNumLTCs > 1;
1100 
1101  case NTV2_TCINDEX_SDI1:
1102  case NTV2_TCINDEX_SDI1_LTC:
1103  case NTV2_TCINDEX_SDI1_2: return maxNumSDIs > 0;
1104 
1105  case NTV2_TCINDEX_SDI2:
1106  case NTV2_TCINDEX_SDI2_LTC:
1107  case NTV2_TCINDEX_SDI2_2: return maxNumSDIs > 1;
1108 
1109  case NTV2_TCINDEX_SDI3:
1110  case NTV2_TCINDEX_SDI3_LTC:
1111  case NTV2_TCINDEX_SDI3_2: return maxNumSDIs > 2;
1112 
1113  case NTV2_TCINDEX_SDI4:
1114  case NTV2_TCINDEX_SDI4_LTC:
1115  case NTV2_TCINDEX_SDI4_2: return maxNumSDIs > 3;
1116 
1117  case NTV2_TCINDEX_SDI5:
1118  case NTV2_TCINDEX_SDI5_LTC:
1119  case NTV2_TCINDEX_SDI5_2: return maxNumSDIs > 4;
1120 
1121  case NTV2_TCINDEX_SDI6:
1122  case NTV2_TCINDEX_SDI6_LTC:
1123  case NTV2_TCINDEX_SDI6_2:
1124  case NTV2_TCINDEX_SDI7:
1125  case NTV2_TCINDEX_SDI7_LTC:
1126  case NTV2_TCINDEX_SDI7_2:
1127  case NTV2_TCINDEX_SDI8:
1128  case NTV2_TCINDEX_SDI8_LTC:
1129  case NTV2_TCINDEX_SDI8_2: return maxNumSDIs > 5;
1130 
1131  default: break;
1132  }
1133  return false;
1134 }
1135 
1137 {
1138  if (NTV2DeviceGetNumAudioSystems(inDeviceID))
1139  return (NTV2AudioSystem)(NTV2DeviceGetNumAudioSystems(inDeviceID) + 1);
1140  return NTV2_AUDIOSYSTEM_INVALID;
1141 }
1142 
1144 {
1145  if (NTV2DeviceGetNumAudioSystems(inDeviceID))
1146  return (NTV2AudioSystem)(NTV2DeviceGetNumAudioSystems(inDeviceID));
1147  else
1148  return NTV2_AUDIOSYSTEM_INVALID;
1149 }
1150 
1152 {
1153  if (NTV2DeviceGetSPIFlashVersion(inDeviceID) >= 3 && NTV2DeviceGetSPIFlashVersion(inDeviceID) <= 6)
1154  return true;
1155  else
1156  return false;
1157 }
1158 
1159 #if !defined(NTV2_DEPRECATE_17_0)
1160  bool NTV2DeviceHasSPIv2 (const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 2;}
1161  bool NTV2DeviceHasSPIv3(const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 3;}
1162  bool NTV2DeviceHasSPIv4(const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 4;}
1163  bool NTV2DeviceHasSPIv5(const NTV2DeviceID inDeviceID) {return NTV2DeviceGetSPIFlashVersion(inDeviceID) == 5;}
1164 
1165  bool NTV2DeviceHasGenlockv2(const NTV2DeviceID devID) {return NTV2DeviceGetGenlockVersion(devID) == 2;}
1166  bool NTV2DeviceHasGenlockv3(const NTV2DeviceID devID) {return NTV2DeviceGetGenlockVersion(devID) == 3;}
1167 
1169 
1173 
1175  bool NTV2DeviceCanDoAudioN(const NTV2DeviceID devID, UWord index0) {return index0 < NTV2DeviceGetNumAudioSystems(devID);}
1176  bool NTV2DeviceCanDoLTCOutN(const NTV2DeviceID devID, UWord index0) {return index0 < NTV2DeviceGetNumLTCOutputs(devID);}
1177  bool NTV2DeviceCanDoLTCInN(const NTV2DeviceID devID, UWord index0) {return index0 < NTV2DeviceGetNumLTCInputs(devID);}
1178  bool NTV2DeviceCanDoRS422N(const NTV2DeviceID devID, const NTV2Channel ch) {return ch < NTV2DeviceGetNumSerialPorts(devID);}
1179 #endif // !defined(NTV2_DEPRECATE_17_0)
1180 
1181 bool work_around_erroneous_compiler_warning (void) {return true;}
NTV2DeviceGetNumLTCInputs
UWord NTV2DeviceGetNumLTCInputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11863
NTV2DeviceHasSPIv5
bool NTV2DeviceHasSPIv5(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1163
NTV2_FORMAT_3840x2160p_6000
@ NTV2_FORMAT_3840x2160p_6000
Definition: ntv2enums.h:646
NTV2_FORMAT_4096x2160psf_2500
@ NTV2_FORMAT_4096x2160psf_2500
Definition: ntv2enums.h:654
DEVICE_ID_KONALHIDVI
@ DEVICE_ID_KONALHIDVI
See KONA LHi.
Definition: ntv2enums.h:77
NTV2_FORMAT_625_5000
@ NTV2_FORMAT_625_5000
Definition: ntv2enums.h:574
NTV2_FORMAT_4x1920x1080p_6000
@ NTV2_FORMAT_4x1920x1080p_6000
Definition: ntv2enums.h:610
NTV2_FG_4x2048x1080
@ NTV2_FG_4x2048x1080
4096x2160, for 4K, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:363
NTV2DeviceGetNumAnalogAudioOutputChannels
UWord NTV2DeviceGetNumAnalogAudioOutputChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10379
NTV2_FORMAT_3840x2160psf_2500
@ NTV2_FORMAT_3840x2160psf_2500
Definition: ntv2enums.h:636
NTV2_FORMAT_1080psf_2398
@ NTV2_FORMAT_1080psf_2398
Definition: ntv2enums.h:546
NTV2_TCINDEX_SDI4
@ NTV2_TCINDEX_SDI4
SDI 4 embedded VITC.
Definition: ntv2enums.h:3935
NTV2_FORMAT_4096x2160p_2400
@ NTV2_FORMAT_4096x2160p_2400
Definition: ntv2enums.h:656
NTV2_FBF_ARGB
@ NTV2_FBF_ARGB
See 8-Bit ARGB, RGBA, ABGR Formats.
Definition: ntv2enums.h:218
NTV2_FORMAT_2K_1498
@ NTV2_FORMAT_2K_1498
Definition: ntv2enums.h:581
NTV2_FORMAT_720p_5000
@ NTV2_FORMAT_720p_5000
Definition: ntv2enums.h:557
NTV2_NUM_STANDARDS
@ NTV2_NUM_STANDARDS
Definition: ntv2enums.h:177
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:668
NTV2_Wgt12GSDIOut1
@ NTV2_Wgt12GSDIOut1
Definition: ntv2enums.h:3002
NTV2_OUTPUTDESTINATION_HDMI1
@ NTV2_OUTPUTDESTINATION_HDMI1
Definition: ntv2enums.h:1316
DEVICE_ID_KONAHDMI
@ DEVICE_ID_KONAHDMI
See KONA HDMI.
Definition: ntv2enums.h:66
NTV2_FORMAT_2K_2400
@ NTV2_FORMAT_2K_2400
Definition: ntv2enums.h:584
NTV2_WgtSDIOut2
@ NTV2_WgtSDIOut2
Definition: ntv2enums.h:2917
NTV2_STANDARD_2Kx1080p
@ NTV2_STANDARD_2Kx1080p
Identifies SMPTE HD 2K1080p.
Definition: ntv2enums.h:167
XENA2_FRAMEBUFFER_SIZE
#define XENA2_FRAMEBUFFER_SIZE
Definition: ntv2publicinterface.h:3785
NTV2_FORMAT_4x4096x2160p_4800
@ NTV2_FORMAT_4x4096x2160p_4800
Definition: ntv2enums.h:705
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:699
NTV2_FBF_12BIT_RGB_PACKED
@ NTV2_FBF_12BIT_RGB_PACKED
See 12-Bit Packed RGB.
Definition: ntv2enums.h:234
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:573
NTV2_WgtSDIIn1
@ NTV2_WgtSDIIn1
Definition: ntv2enums.h:2910
NTV2_FG_1920x1114
@ NTV2_FG_1920x1114
1920x1080, NTV2_VANCMODE_TALLER
Definition: ntv2enums.h:349
ntv2devicefeatures.h
Declares device capability functions.
NTV2DeviceGetGenlockVersion
UWord NTV2DeviceGetGenlockVersion(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:9183
NTV2_FG_720x576
@ NTV2_FG_720x576
720x576, for PAL 625i, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:348
NTV2_FG_720x508
@ NTV2_FG_720x508
720x486, for NTSC 525i, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:351
NTV2_FORMAT_4096x2160p_11988
@ NTV2_FORMAT_4096x2160p_11988
Definition: ntv2enums.h:667
NTV2_FORMAT_4096x2160p_2500
@ NTV2_FORMAT_4096x2160p_2500
Definition: ntv2enums.h:657
NTV2_FRAMERATE_1500
@ NTV2_FRAMERATE_1500
15 frames per second
Definition: ntv2enums.h:422
NTV2_TCINDEX_SDI2_2
@ NTV2_TCINDEX_SDI2_2
SDI 2 embedded VITC 2.
Definition: ntv2enums.h:3951
NTV2_FRAMERATE_6000
@ NTV2_FRAMERATE_6000
60 frames per second
Definition: ntv2enums.h:409
NTV2_Wgt12GSDIIn4
@ NTV2_Wgt12GSDIIn4
Definition: ntv2enums.h:3001
NTV2_FORMAT_525psf_2997
@ NTV2_FORMAT_525psf_2997
Definition: ntv2enums.h:577
NTV2Channel
NTV2Channel
These enum values are mostly used to identify a specific widget_framestore. They're also commonly use...
Definition: ntv2enums.h:1346
NTV2_FG_4x4096x2160
@ NTV2_FG_4x4096x2160
8192x4320, for 8K, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:367
NTV2_WgtCSC2
@ NTV2_WgtCSC2
Definition: ntv2enums.h:2905
NTV2_FORMAT_4x2048x1080p_4795
@ NTV2_FORMAT_4x2048x1080p_4795
Definition: ntv2enums.h:614
NTV2_FBF_10BIT_DPX_LE
@ NTV2_FBF_10BIT_DPX_LE
10-Bit DPX Little-Endian
Definition: ntv2enums.h:232
NTV2_FORMAT_4096x2160psf_2398
@ NTV2_FORMAT_4096x2160psf_2398
Definition: ntv2enums.h:652
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:3948
NTV2_STANDARD_1080
@ NTV2_STANDARD_1080
Identifies SMPTE HD 1080i or 1080psf.
Definition: ntv2enums.h:161
NTV2_STANDARD_3840x2160p
@ NTV2_STANDARD_3840x2160p
Identifies Ultra-High-Definition (UHD)
Definition: ntv2enums.h:169
NTV2_FRAMERATE_2997
@ NTV2_FRAMERATE_2997
Fractional rate of 30,000 frames per 1,001 seconds.
Definition: ntv2enums.h:413
NTV2_TCINDEX_SDI8_2
@ NTV2_TCINDEX_SDI8_2
SDI 8 embedded VITC 2.
Definition: ntv2enums.h:3957
NTV2_Wgt3GSDIIn2
@ NTV2_Wgt3GSDIIn2
Definition: ntv2enums.h:2913
NTV2_FORMAT_1080p_2K_6000_B
@ NTV2_FORMAT_1080p_2K_6000_B
Definition: ntv2enums.h:631
NTV2_Wgt3GSDIOut3
@ NTV2_Wgt3GSDIOut3
Definition: ntv2enums.h:2922
NTV2_Wgt3GSDIOut7
@ NTV2_Wgt3GSDIOut7
Definition: ntv2enums.h:2971
NTV2_FBF_RGBA
@ NTV2_FBF_RGBA
See 8-Bit ARGB, RGBA, ABGR Formats.
Definition: ntv2enums.h:219
NTV2_STANDARD_625
@ NTV2_STANDARD_625
Identifies SMPTE SD 625i.
Definition: ntv2enums.h:164
NTV2_FORMAT_1080psf_2K_2398
@ NTV2_FORMAT_1080psf_2K_2398
Definition: ntv2enums.h:555
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:355
NTV2_STANDARD_4096HFR
@ NTV2_STANDARD_4096HFR
Identifies high frame-rate 4K.
Definition: ntv2enums.h:172
NTV2_STANDARD_4096x2160p
@ NTV2_STANDARD_4096x2160p
Identifies 4K.
Definition: ntv2enums.h:170
NTV2_FORMAT_1080p_2K_4800_A
@ NTV2_FORMAT_1080p_2K_4800_A
Definition: ntv2enums.h:626
NTV2_FORMAT_4x2048x1080p_11988
@ NTV2_FORMAT_4x2048x1080p_11988
Definition: ntv2enums.h:616
DEVICE_ID_SOJI_OE6
@ DEVICE_ID_SOJI_OE6
Definition: ntv2enums.h:88
NTV2DeviceGetActiveMemorySize
ULWord NTV2DeviceGetActiveMemorySize(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:8907
NTV2_FG_INVALID
@ NTV2_FG_INVALID
Definition: ntv2enums.h:371
NTV2_FRAMERATE_12000
@ NTV2_FRAMERATE_12000
120 frames per second
Definition: ntv2enums.h:420
NTV2_FBF_48BIT_RGB
@ NTV2_FBF_48BIT_RGB
See 48-Bit RGB.
Definition: ntv2enums.h:233
NTV2_OUTPUTDESTINATION_SDI2
@ NTV2_OUTPUTDESTINATION_SDI2
Definition: ntv2enums.h:1318
NTV2DeviceGetAudioFrameBuffer_Ex
ULWord NTV2DeviceGetAudioFrameBuffer_Ex(NTV2DeviceID boardID)
Definition: ntv2devicefeatures.cpp:305
NTV2_FORMAT_1080i_5994
@ NTV2_FORMAT_1080i_5994
Definition: ntv2enums.h:542
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:1319
DEVICE_ID_KONAIP_2110_RGB12
@ DEVICE_ID_KONAIP_2110_RGB12
See KONA IP.
Definition: ntv2enums.h:71
NTV2_WgtSDIOut4
@ NTV2_WgtSDIOut4
Definition: ntv2enums.h:2919
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:2999
NTV2_FORMAT_4x1920x1080psf_3000
@ NTV2_FORMAT_4x1920x1080psf_3000
Definition: ntv2enums.h:603
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:623
NTV2_FORMAT_4096x2160psf_2997
@ NTV2_FORMAT_4096x2160psf_2997
Definition: ntv2enums.h:660
NTV2_FORMAT_4x2048x1080p_2997
@ NTV2_FORMAT_4x2048x1080p_2997
Definition: ntv2enums.h:604
NTV2_FBF_10BIT_ARGB
@ NTV2_FBF_10BIT_ARGB
10-Bit ARGB
Definition: ntv2enums.h:238
NTV2_IS_QUAD_QUAD_FRAME_GEOMETRY
#define NTV2_IS_QUAD_QUAD_FRAME_GEOMETRY(geom)
Definition: ntv2enums.h:376
NTV2_FBF_10BIT_YCBCRA
@ NTV2_FBF_10BIT_YCBCRA
10-Bit YCbCrA
Definition: ntv2enums.h:231
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:701
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:3953
NTV2_FORMAT_4x4096x2160p_4795
@ NTV2_FORMAT_4x4096x2160p_4795
Definition: ntv2enums.h:704
NTV2_FORMAT_4x1920x1080p_2997
@ NTV2_FORMAT_4x1920x1080p_2997
Definition: ntv2enums.h:600
NTV2_FORMAT_4x1920x1080p_2500
@ NTV2_FORMAT_4x1920x1080p_2500
Definition: ntv2enums.h:593
NTV2_Wgt12GSDIOut3
@ NTV2_Wgt12GSDIOut3
Definition: ntv2enums.h:3004
NTV2_Wgt3GSDIOut1
@ NTV2_Wgt3GSDIOut1
Definition: ntv2enums.h:2920
NTV2_FORMAT_4x2048x1080p_4800
@ NTV2_FORMAT_4x2048x1080p_4800
Definition: ntv2enums.h:615
NTV2FrameBufferFormat
NTV2FrameBufferFormat
Identifies a particular video frame buffer format. See Device Frame Buffer Formats for details.
Definition: ntv2enums.h:213
NTV2_FORMAT_4x3840x2160p_2500
@ NTV2_FORMAT_4x3840x2160p_2500
Definition: ntv2enums.h:688
NTV2DeviceGetNumberFrameBuffers
ULWord NTV2DeviceGetNumberFrameBuffers(NTV2DeviceID id, NTV2FrameGeometry fg, NTV2FrameBufferFormat fbf)
Definition: ntv2devicefeatures.cpp:497
NTV2_TCINDEX_SDI6
@ NTV2_TCINDEX_SDI6
SDI 6 embedded VITC.
Definition: ntv2enums.h:3941
NTV2_FG_720x486
@ NTV2_FG_720x486
720x486, for NTSC 525i and 525p60, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:347
NTV2_IS_ATC_VITC2_TIMECODE_INDEX
#define NTV2_IS_ATC_VITC2_TIMECODE_INDEX(__x__)
Definition: ntv2enums.h:3969
NTV2DeviceGetNumCSCs
UWord NTV2DeviceGetNumCSCs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10839
NTV2DeviceHasSPIv2
bool NTV2DeviceHasSPIv2(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1160
NTV2_Wgt3GSDIIn5
@ NTV2_Wgt3GSDIIn5
Definition: ntv2enums.h:2965
NTV2_FBF_10BIT_DPX
@ NTV2_FBF_10BIT_DPX
See 10-Bit RGB - DPX Format.
Definition: ntv2enums.h:224
NTV2DeviceCanDoOutputDestination
bool NTV2DeviceCanDoOutputDestination(const NTV2DeviceID inDeviceID, const NTV2OutputDest inOutputDest)
Definition: ntv2devicefeatures.cpp:137
NTV2_Wgt3GSDIOut8
@ NTV2_Wgt3GSDIOut8
Definition: ntv2enums.h:2972
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:686
NTV2_Wgt3GSDIOut5
@ NTV2_Wgt3GSDIOut5
Definition: ntv2enums.h:2969
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:414
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:1181
NTV2_FORMAT_1080p_2K_4795_A
@ NTV2_FORMAT_1080p_2K_4795_A
Definition: ntv2enums.h:625
NTV2_FORMAT_3840x2160p_2500
@ NTV2_FORMAT_3840x2160p_2500
Definition: ntv2enums.h:639
NTV2FrameRate
NTV2FrameRate
Identifies a particular video frame rate.
Definition: ntv2enums.h:406
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:583
NTV2_FORMAT_4x4096x2160p_2997
@ NTV2_FORMAT_4x4096x2160p_2997
Definition: ntv2enums.h:702
NTV2DeviceCanDoTCIndex
bool NTV2DeviceCanDoTCIndex(const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
Definition: ntv2devicefeatures.cpp:986
NTV2_FRAMERATE_4800
@ NTV2_FRAMERATE_4800
48 frames per second
Definition: ntv2enums.h:418
NTV2DeviceCanDoLTCInN
bool NTV2DeviceCanDoLTCInN(const NTV2DeviceID devID, UWord index0)
Definition: ntv2devicefeatures.cpp:1177
NTV2_FORMAT_4096x2160psf_2400
@ NTV2_FORMAT_4096x2160psf_2400
Definition: ntv2enums.h:653
NTV2_Wgt3GSDIIn1
@ NTV2_Wgt3GSDIIn1
Definition: ntv2enums.h:2912
NTV2DeviceGetNumSerialPorts
UWord NTV2DeviceGetNumSerialPorts(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12507
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:3954
NTV2_FRAMERATE_2400
@ NTV2_FRAMERATE_2400
24 frames per second
Definition: ntv2enums.h:415
NTV2_FORMAT_4x2048x1080psf_2398
@ NTV2_FORMAT_4x2048x1080psf_2398
Definition: ntv2enums.h:594
NTV2_FBF_10BIT_RGB_PACKED
@ NTV2_FBF_10BIT_RGB_PACKED
10-Bit Packed RGB
Definition: ntv2enums.h:237
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:597
MAX_OF
#define MAX_OF(__a__, __b__)
Definition: ntv2devicefeatures.cpp:984
NTV2DeviceCanDoInputTCIndex
bool NTV2DeviceCanDoInputTCIndex(const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
Definition: ntv2devicefeatures.cpp:1036
NTV2_WgtSDIOut1
@ NTV2_WgtSDIOut1
Definition: ntv2enums.h:2916
NTV2_TCINDEX_SDI2_LTC
@ NTV2_TCINDEX_SDI2_LTC
SDI 2 embedded ATC LTC.
Definition: ntv2enums.h:3937
NTV2_FORMAT_1080psf_2K_2500
@ NTV2_FORMAT_1080psf_2K_2500
Definition: ntv2enums.h:567
NTV2_OUTPUTDESTINATION_SDI1
@ NTV2_OUTPUTDESTINATION_SDI1
Definition: ntv2enums.h:1317
NTV2_FORMAT_4x2048x1080psf_2400
@ NTV2_FORMAT_4x2048x1080psf_2400
Definition: ntv2enums.h:595
NTV2_TCINDEX_SDI1_LTC
@ NTV2_TCINDEX_SDI1_LTC
SDI 1 embedded ATC LTC.
Definition: ntv2enums.h:3936
NTV2_Wgt3GSDIOut2
@ NTV2_Wgt3GSDIOut2
Definition: ntv2enums.h:2921
NTV2_FORMAT_1080p_5994_B
@ NTV2_FORMAT_1080p_5994_B
Definition: ntv2enums.h:559
NTV2_FORMAT_1080psf_3000_2
@ NTV2_FORMAT_1080psf_3000_2
Definition: ntv2enums.h:570
NTV2_TCINDEX_SDI1
@ NTV2_TCINDEX_SDI1
SDI 1 embedded VITC.
Definition: ntv2enums.h:3932
NTV2_FORMAT_1080p_2K_2400
@ NTV2_FORMAT_1080p_2K_2400
Definition: ntv2enums.h:554
NTV2_TCINDEX_SDI2
@ NTV2_TCINDEX_SDI2
SDI 2 embedded VITC.
Definition: ntv2enums.h:3933
NTV2_FG_2048x1588
@ NTV2_FG_2048x1588
2048x1556, for 2Kx1556psf film format, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:357
NTV2_FORMAT_525_2398
@ NTV2_FORMAT_525_2398
Definition: ntv2enums.h:575
NTV2DeviceCanDoOutputTCIndex
bool NTV2DeviceCanDoOutputTCIndex(const NTV2DeviceID inDeviceID, const NTV2TCIndex inTCIndex)
Definition: ntv2devicefeatures.cpp:1086
NTV2_FORMAT_4x2048x1080p_3000
@ NTV2_FORMAT_4x2048x1080p_3000
Definition: ntv2enums.h:605
NTV2_TCINDEX_SDI5
@ NTV2_TCINDEX_SDI5
SDI 5 embedded VITC.
Definition: ntv2enums.h:3940
NTV2Standard
NTV2Standard
Identifies a particular video standard.
Definition: ntv2enums.h:159
NTV2_FORMAT_4096x2160p_4795
@ NTV2_FORMAT_4096x2160p_4795
Definition: ntv2enums.h:662
NTV2_FRAMERATE_2398
@ NTV2_FRAMERATE_2398
Fractional rate of 24,000 frames per 1,001 seconds.
Definition: ntv2enums.h:416
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:256
NTV2_FORMAT_4x4096x2160p_3000
@ NTV2_FORMAT_4x4096x2160p_3000
Definition: ntv2enums.h:703
NTV2DeviceCanDoAudioMixer
bool NTV2DeviceCanDoAudioMixer(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:1784
NTV2DeviceCanDoWidget
bool NTV2DeviceCanDoWidget(const NTV2DeviceID inDeviceID, const NTV2WidgetID inWidgetID)
Definition: ntv2devicefeatures.hpp:32218
NTV2_FORMAT_2K_2500
@ NTV2_FORMAT_2K_2500
Definition: ntv2enums.h:585
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:3956
NTV2_FORMAT_4x2048x1080psf_3000
@ NTV2_FORMAT_4x2048x1080psf_3000
Definition: ntv2enums.h:607
NTV2_FORMAT_1080p_2997
@ NTV2_FORMAT_1080p_2997
Definition: ntv2enums.h:548
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:627
NTV2DeviceCanDoAudioN
bool NTV2DeviceCanDoAudioN(const NTV2DeviceID devID, UWord index0)
Definition: ntv2devicefeatures.cpp:1175
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:360
NTV2_FRAMERATE_1498
@ NTV2_FRAMERATE_1498
Fractional rate of 15,000 frames per 1,001 seconds.
Definition: ntv2enums.h:423
Get8MBFrameSizeFactor
UWord Get8MBFrameSizeFactor(const NTV2FrameGeometry inFG, const NTV2FrameBufferFormat inFBF)
Definition: ntv2devicefeatures.cpp:171
NTV2_FORMAT_1080p_3000
@ NTV2_FORMAT_1080p_3000
Definition: ntv2enums.h:549
NTV2_FORMAT_4x3840x2160p_5994
@ NTV2_FORMAT_4x3840x2160p_5994
Definition: ntv2enums.h:692
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:1143
NTV2DeviceCanDoAudio6Channels
bool NTV2DeviceCanDoAudio6Channels(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1171
NTV2_FORMAT_4096x2160p_2398
@ NTV2_FORMAT_4096x2160p_2398
Definition: ntv2enums.h:655
NTV2_Wgt3GSDIIn6
@ NTV2_Wgt3GSDIIn6
Definition: ntv2enums.h:2966
NTV2_FORMAT_720p_6000
@ NTV2_FORMAT_720p_6000
Definition: ntv2enums.h:545
NTV2DeviceGetAudioMixerSystem
NTV2AudioSystem NTV2DeviceGetAudioMixerSystem(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1136
DEVICE_ID_SOJI_OE1
@ DEVICE_ID_SOJI_OE1
Definition: ntv2enums.h:83
NTV2_FORMAT_1080p_2500
@ NTV2_FORMAT_1080p_2500
Definition: ntv2enums.h:550
NTV2_FORMAT_3840x2160psf_3000
@ NTV2_FORMAT_3840x2160psf_3000
Definition: ntv2enums.h:643
NTV2TCIndex
NTV2TCIndex
These enum values are indexes into the capture/playout AutoCirculate timecode arrays.
Definition: ntv2enums.h:3929
NTV2_Wgt3GSDIIn8
@ NTV2_Wgt3GSDIIn8
Definition: ntv2enums.h:2968
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:611
NTV2_OUTPUTDESTINATION_SDI6
@ NTV2_OUTPUTDESTINATION_SDI6
Definition: ntv2enums.h:1322
NTV2DeviceGetNumVideoInputs
UWord NTV2DeviceGetNumVideoInputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12783
NTV2DeviceGetNumHDMIVideoOutputs
UWord NTV2DeviceGetNumHDMIVideoOutputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11679
NTV2_FORMAT_4096x2160p_6000
@ NTV2_FORMAT_4096x2160p_6000
Definition: ntv2enums.h:666
NTV2_FG_720x514
@ NTV2_FG_720x514
720x486, for NTSC 525i and 525p60, NTV2_VANCMODE_TALLER
Definition: ntv2enums.h:359
NTV2DeviceGetNumLUTs
UWord NTV2DeviceGetNumLUTs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12139
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:1168
NTV2_STANDARD_1080p
@ NTV2_STANDARD_1080p
Identifies SMPTE HD 1080p.
Definition: ntv2enums.h:165
UWord
uint16_t UWord
Definition: ajatypes.h:254
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:667
DEVICE_ID_SOJI_OE3
@ DEVICE_ID_SOJI_OE3
Definition: ntv2enums.h:85
NTV2_FORMAT_4x1920x1080p_3000
@ NTV2_FORMAT_4x1920x1080p_3000
Definition: ntv2enums.h:601
NTV2_FORMAT_4x3840x2160p_2997
@ NTV2_FORMAT_4x3840x2160p_2997
Definition: ntv2enums.h:689
NTV2_TCINDEX_SDI7
@ NTV2_TCINDEX_SDI7
SDI 7 embedded VITC.
Definition: ntv2enums.h:3942
NTV2_OUTPUTDESTINATION_SDI8
@ NTV2_OUTPUTDESTINATION_SDI8
Definition: ntv2enums.h:1324
NTV2_FORMAT_1080p_5000_B
@ NTV2_FORMAT_1080p_5000_B
Definition: ntv2enums.h:558
NTV2Framesize
NTV2Framesize
Kona2/Xena2 specific enums.
Definition: ntv2enums.h:2105
NTV2_TCINDEX_SDI5_LTC
@ NTV2_TCINDEX_SDI5_LTC
SDI 5 embedded ATC LTC.
Definition: ntv2enums.h:3946
NTV2_FORMAT_4x3840x2160p_5000
@ NTV2_FORMAT_4x3840x2160p_5000
Definition: ntv2enums.h:691
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:621
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:11403
NTV2_FORMAT_4x2048x1080p_12000
@ NTV2_FORMAT_4x2048x1080p_12000
Definition: ntv2enums.h:617
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:10563
DEVICE_ID_KONA5_OE8
@ DEVICE_ID_KONA5_OE8
See KONA 5.
Definition: ntv2enums.h:61
NTV2_Wgt12GSDIOut4
@ NTV2_Wgt12GSDIOut4
Definition: ntv2enums.h:3005
NTV2_FORMAT_625psf_2500
@ NTV2_FORMAT_625psf_2500
Definition: ntv2enums.h:578
DEVICE_ID_KONALHEPLUS
@ DEVICE_ID_KONALHEPLUS
See KONA LHe Plus.
Definition: ntv2enums.h:75
NTV2DeviceGetNumLTCOutputs
UWord NTV2DeviceGetNumLTCOutputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11955
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:346
NTV2_FORMAT_1080p_2K_2500
@ NTV2_FORMAT_1080p_2K_2500
Definition: ntv2enums.h:566
NTV2_FORMAT_4x1920x1080psf_2997
@ NTV2_FORMAT_4x1920x1080psf_2997
Definition: ntv2enums.h:602
NTV2_FORMAT_1080p_6000_A
@ NTV2_FORMAT_1080p_6000_A
Definition: ntv2enums.h:565
NTV2_FORMAT_3840x2160psf_2398
@ NTV2_FORMAT_3840x2160psf_2398
Definition: ntv2enums.h:634
NTV2_TCINDEX_SDI4_LTC
@ NTV2_TCINDEX_SDI4_LTC
SDI 4 embedded ATC LTC.
Definition: ntv2enums.h:3945
NTV2_TCINDEX_SDI3_2
@ NTV2_TCINDEX_SDI3_2
SDI 3 embedded VITC 2.
Definition: ntv2enums.h:3952
NTV2_FRAMERATE_11988
@ NTV2_FRAMERATE_11988
Fractional rate of 120,000 frames per 1,001 seconds.
Definition: ntv2enums.h:421
NTV2_FORMAT_1080p_2K_2398
@ NTV2_FORMAT_1080p_2K_2398
Definition: ntv2enums.h:553
NTV2_Wgt12GSDIIn3
@ NTV2_Wgt12GSDIIn3
Definition: ntv2enums.h:3000
NTV2DeviceGetAudioFrameBuffer
ULWord NTV2DeviceGetAudioFrameBuffer(NTV2DeviceID boardID, NTV2FrameGeometry inFrameGeometry, NTV2FrameBufferFormat frameFormat)
Definition: ntv2devicefeatures.cpp:655
NTV2_FORMAT_3840x2160p_2997
@ NTV2_FORMAT_3840x2160p_2997
Definition: ntv2enums.h:640
NTV2_FORMAT_4096x2160p_4800
@ NTV2_FORMAT_4096x2160p_4800
Definition: ntv2enums.h:663
NTV2_MAX_NUM_Framesizes
@ NTV2_MAX_NUM_Framesizes
Definition: ntv2enums.h:2123
NTV2_FORMAT_1080p_2398
@ NTV2_FORMAT_1080p_2398
Definition: ntv2enums.h:551
NTV2_Wgt3GSDIIn7
@ NTV2_Wgt3GSDIIn7
Definition: ntv2enums.h:2967
NTV2_STANDARD_4096i
@ NTV2_STANDARD_4096i
Identifies 4K psf.
Definition: ntv2enums.h:176
NTV2_FORMAT_3840x2160psf_2400
@ NTV2_FORMAT_3840x2160psf_2400
Definition: ntv2enums.h:635
NTV2_FORMAT_1080psf_2K_2400
@ NTV2_FORMAT_1080psf_2K_2400
Definition: ntv2enums.h:556
NTV2DeviceHasSPIv4
bool NTV2DeviceHasSPIv4(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1162
NTV2_FORMAT_3840x2160p_5994
@ NTV2_FORMAT_3840x2160p_5994
Definition: ntv2enums.h:645
NTV2_FORMAT_4x4096x2160p_2400
@ NTV2_FORMAT_4x4096x2160p_2400
Definition: ntv2enums.h:700
NTV2DeviceGetNumAudioSystems
UWord NTV2DeviceGetNumAudioSystems(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10655
NTV2DeviceGetFrameBufferSize
ULWord NTV2DeviceGetFrameBufferSize(NTV2DeviceID id, NTV2FrameGeometry fg, NTV2FrameBufferFormat fbf)
Definition: ntv2devicefeatures.cpp:325
NTV2_FORMAT_4x4096x2160p_6000
@ NTV2_FORMAT_4x4096x2160p_6000
Definition: ntv2enums.h:708
NTV2_FORMAT_3840x2160p_2398
@ NTV2_FORMAT_3840x2160p_2398
Definition: ntv2enums.h:637
NTV2_FG_1920x1112
@ NTV2_FG_1920x1112
1920x1080, for 1080i and 1080p, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:353
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:1170
NTV2_FORMAT_UNKNOWN
@ NTV2_FORMAT_UNKNOWN
Definition: ntv2enums.h:528
NTV2DeviceCanDoAudio8Channels
bool NTV2DeviceCanDoAudio8Channels(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1172
NTV2_FORMAT_4x1920x1080psf_2398
@ NTV2_FORMAT_4x1920x1080psf_2398
Definition: ntv2enums.h:588
NTV2DeviceCanDo12gRouting
bool NTV2DeviceCanDo12gRouting(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:296
NTV2_STANDARD_2K
@ NTV2_STANDARD_2K
Definition: ntv2enums.h:166
NTV2_FORMAT_1080p_2K_6000_A
@ NTV2_FORMAT_1080p_2K_6000_A
Definition: ntv2enums.h:620
NTV2_FG_720x598
@ NTV2_FG_720x598
720x576, for PAL 625i, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:352
NTV2_TCINDEX_SDI1_2
@ NTV2_TCINDEX_SDI1_2
SDI 1 embedded VITC 2.
Definition: ntv2enums.h:3950
NTV2_Wgt3GSDIOut4
@ NTV2_Wgt3GSDIOut4
Definition: ntv2enums.h:2923
NTV2_TCINDEX_SDI3
@ NTV2_TCINDEX_SDI3
SDI 3 embedded VITC.
Definition: ntv2enums.h:3934
NTV2_IS_QUAD_FRAME_GEOMETRY
#define NTV2_IS_QUAD_FRAME_GEOMETRY(geom)
Definition: ntv2enums.h:379
NTV2_FORMAT_4096x2160p_3000
@ NTV2_FORMAT_4096x2160p_3000
Definition: ntv2enums.h:659
NTV2DeviceGetAudioFrameBuffer2
ULWord NTV2DeviceGetAudioFrameBuffer2(NTV2DeviceID boardID, NTV2FrameGeometry inFrameGeometry, NTV2FrameBufferFormat frameFormat)
Definition: ntv2devicefeatures.cpp:661
NTV2DeviceCanDo292In
bool NTV2DeviceCanDo292In(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:81
NTV2_FORMAT_4x1920x1080psf_2500
@ NTV2_FORMAT_4x1920x1080psf_2500
Definition: ntv2enums.h:590
NTV2_FRAMERATE_5994
@ NTV2_FRAMERATE_5994
Fractional rate of 60,000 frames per 1,001 seconds.
Definition: ntv2enums.h:411
NTV2DeviceHasSPIv3
bool NTV2DeviceHasSPIv3(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1161
NTV2DeviceCanDoRS422N
bool NTV2DeviceCanDoRS422N(const NTV2DeviceID devID, const NTV2Channel ch)
Definition: ntv2devicefeatures.cpp:1178
DEVICE_ID_CORVID24
@ DEVICE_ID_CORVID24
See Corvid 24.
Definition: ntv2enums.h:24
NTV2_FORMAT_4x3840x2160p_2400
@ NTV2_FORMAT_4x3840x2160p_2400
Definition: ntv2enums.h:687
NTV2_STANDARD_525
@ NTV2_STANDARD_525
Identifies SMPTE SD 525i.
Definition: ntv2enums.h:163
DEVICE_ID_KONA1
@ DEVICE_ID_KONA1
See KONA 1.
Definition: ntv2enums.h:43
NTV2_FORMAT_4x2048x1080p_2500
@ NTV2_FORMAT_4x2048x1080p_2500
Definition: ntv2enums.h:599
NTV2_FORMAT_4x1920x1080p_5994
@ NTV2_FORMAT_4x1920x1080p_5994
Definition: ntv2enums.h:609
NTV2_FORMAT_720p_2398
@ NTV2_FORMAT_720p_2398
Definition: ntv2enums.h:561
NTV2_FORMAT_4x4096x2160p_5000
@ NTV2_FORMAT_4x4096x2160p_5000
Definition: ntv2enums.h:706
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:693
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:686
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:171
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:3939
NTV2_Wgt3GSDIOut6
@ NTV2_Wgt3GSDIOut6
Definition: ntv2enums.h:2970
NTV2_STANDARD_2Kx1080i
@ NTV2_STANDARD_2Kx1080i
Identifies SMPTE HD 2K1080psf.
Definition: ntv2enums.h:168
NTV2DeviceCanDo3GIn
bool NTV2DeviceCanDo3GIn(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:91
NTV2_FORMAT_1080p_5000_A
@ NTV2_FORMAT_1080p_5000_A
Definition: ntv2enums.h:563
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:613
AJAExport
#define AJAExport
Definition: export.h:33
NTV2_FORMAT_3840x2160psf_2997
@ NTV2_FORMAT_3840x2160psf_2997
Definition: ntv2enums.h:642
NTV2VideoFormat
enum _NTV2VideoFormat NTV2VideoFormat
Identifies a particular video format.
NTV2_STANDARD_8192
@ NTV2_STANDARD_8192
Identifies 8K.
Definition: ntv2enums.h:174
ntv2devicefeatures.hpp
Contains implementations of NTV2DeviceCanDo... and NTV2DeviceGetNum... functions. This module is incl...
NTV2_FORMAT_4096x2160p_5000
@ NTV2_FORMAT_4096x2160p_5000
Definition: ntv2enums.h:664
NTV2_TCINDEX_DEFAULT
@ NTV2_TCINDEX_DEFAULT
The "default" timecode (mostly used by the AJA "Retail" service and Control Panel)
Definition: ntv2enums.h:3931
NTV2_FORMAT_1080i_5000
@ NTV2_FORMAT_1080i_5000
Definition: ntv2enums.h:541
NTV2_TCINDEX_SDI6_2
@ NTV2_TCINDEX_SDI6_2
SDI 6 embedded VITC 2.
Definition: ntv2enums.h:3955
NTV2_Wgt12GSDIIn1
@ NTV2_Wgt12GSDIIn1
Definition: ntv2enums.h:2998
NTV2_FORMAT_4x1920x1080p_5000
@ NTV2_FORMAT_4x1920x1080p_5000
Definition: ntv2enums.h:608
NTV2_WgtSDIOut3
@ NTV2_WgtSDIOut3
Definition: ntv2enums.h:2918
NTV2DeviceCanDoStackedAudio
bool NTV2DeviceCanDoStackedAudio(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:5460
NTV2_STANDARD_720
@ NTV2_STANDARD_720
Identifies SMPTE HD 720p.
Definition: ntv2enums.h:162
NTV2_FORMAT_4x1920x1080p_2398
@ NTV2_FORMAT_4x1920x1080p_2398
Definition: ntv2enums.h:591
NTV2_FG_2048x1112
@ NTV2_FG_2048x1112
2048x1080, for 2Kx1080p, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:358
DEVICE_ID_TTAP
@ DEVICE_ID_TTAP
See T-TAP.
Definition: ntv2enums.h:90
NTV2FrameGeometry
NTV2FrameGeometry
Identifies a particular video frame geometry.
Definition: ntv2enums.h:342
NTV2_FORMAT_1080p_6000_B
@ NTV2_FORMAT_1080p_6000_B
Definition: ntv2enums.h:560
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:658
true
#define true
Definition: ntv2devicefeatures.h:26
NTV2_TCINDEX_SDI3_LTC
@ NTV2_TCINDEX_SDI3_LTC
SDI 3 embedded ATC LTC.
Definition: ntv2enums.h:3944
NTV2DeviceGetNumberVideoFrameBuffers
ULWord NTV2DeviceGetNumberVideoFrameBuffers(NTV2DeviceID inDeviceID, NTV2FrameGeometry inFrameGeometry, NTV2Framesize inFrameSize)
Definition: ntv2devicefeatures.cpp:630
NTV2_OUTPUTDESTINATION_SDI7
@ NTV2_OUTPUTDESTINATION_SDI7
Definition: ntv2enums.h:1323
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:676
DEVICE_ID_KONA5_OE7
@ DEVICE_ID_KONA5_OE7
See KONA 5.
Definition: ntv2enums.h:60
NTV2DeviceGetNumHDMIAudioOutputChannels
UWord NTV2DeviceGetNumHDMIAudioOutputChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:11495
NTV2_FORMAT_1080p_5994_A
@ NTV2_FORMAT_1080p_5994_A
Definition: ntv2enums.h:564
NTV2_FG_2048x1114
@ NTV2_FG_2048x1114
2048x1080, NTV2_VANCMODE_TALLER
Definition: ntv2enums.h:350
NTV2_Wgt12GSDIOut2
@ NTV2_Wgt12GSDIOut2
Definition: ntv2enums.h:3003
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:612
NTV2_OUTPUTDESTINATION_SDI4
@ NTV2_OUTPUTDESTINATION_SDI4
Definition: ntv2enums.h:1320
NTV2DeviceHasGenlockv3
bool NTV2DeviceHasGenlockv3(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1166
NTV2_FG_4x1920x1080
@ NTV2_FG_4x1920x1080
3840x2160, for UHD, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:361
NTV2_FORMAT_4x3840x2160p_3000
@ NTV2_FORMAT_4x3840x2160p_3000
Definition: ntv2enums.h:690
NTV2_FORMAT_1080p_2K_5994_B
@ NTV2_FORMAT_1080p_2K_5994_B
Definition: ntv2enums.h:630
NTV2_FBF_16BIT_ARGB
@ NTV2_FBF_16BIT_ARGB
16-Bit ARGB
Definition: ntv2enums.h:239
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:1174
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:3943
NTV2DeviceGetNumVideoOutputs
UWord NTV2DeviceGetNumVideoOutputs(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:12875
NTV2_FORMAT_3840x2160p_5000
@ NTV2_FORMAT_3840x2160p_5000
Definition: ntv2enums.h:644
NTV2_FORMAT_720p_5994
@ NTV2_FORMAT_720p_5994
Definition: ntv2enums.h:544
NTV2_FORMAT_4096x2160psf_3000
@ NTV2_FORMAT_4096x2160psf_3000
Definition: ntv2enums.h:661
NTV2DeviceHasGenlockv2
bool NTV2DeviceHasGenlockv2(const NTV2DeviceID devID)
Definition: ntv2devicefeatures.cpp:1165
NTV2_FG_1280x740
@ NTV2_FG_1280x740
1280x720, for 720p, NTV2_VANCMODE_TALL
Definition: ntv2enums.h:354
NTV2_FORMAT_1080p_2K_5000_A
@ NTV2_FORMAT_1080p_2K_5000_A
Definition: ntv2enums.h:624
NTV2_TCINDEX_SDI8_LTC
@ NTV2_TCINDEX_SDI8_LTC
SDI 8 embedded ATC LTC.
Definition: ntv2enums.h:3949
NTV2_FRAMERATE_5000
@ NTV2_FRAMERATE_5000
50 frames per second
Definition: ntv2enums.h:417
NTV2_TCINDEX_SDI6_LTC
@ NTV2_TCINDEX_SDI6_LTC
SDI 6 embedded ATC LTC.
Definition: ntv2enums.h:3947
NTV2DeviceGetNumAnalogAudioInputChannels
UWord NTV2DeviceGetNumAnalogAudioInputChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:10287
NTV2_FORMAT_4x2048x1080psf_2500
@ NTV2_FORMAT_4x2048x1080psf_2500
Definition: ntv2enums.h:596
NTV2_FBF_10BIT_RGB
@ NTV2_FBF_10BIT_RGB
See 10-Bit RGB Format.
Definition: ntv2enums.h:220
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:356
NTV2_FRAMERATE_4795
@ NTV2_FRAMERATE_4795
Fractional rate of 48,000 frames per 1,001 seconds.
Definition: ntv2enums.h:419
NTV2_FORMAT_2K_1500
@ NTV2_FORMAT_2K_1500
Definition: ntv2enums.h:582
NTV2_Wgt3GSDIIn4
@ NTV2_Wgt3GSDIIn4
Definition: ntv2enums.h:2915
NTV2_FRAMERATE_3000
@ NTV2_FRAMERATE_3000
30 frames per second
Definition: ntv2enums.h:412
NTV2AudioSystem
NTV2AudioSystem
Used to identify an Audio System on an NTV2 device. See Audio System Operation for more information.
Definition: ntv2enums.h:3873
NTV2_FORMAT_1080p_2K_5000_B
@ NTV2_FORMAT_1080p_2K_5000_B
Definition: ntv2enums.h:629
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:576
NTV2_FG_4x3840x2160
@ NTV2_FG_4x3840x2160
7680x4320, for UHD2, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:365
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:569
NTV2DeviceCanDoProgrammableCSC
bool NTV2DeviceCanDoProgrammableCSC(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:164
NTV2_TCINDEX_LTC1
@ NTV2_TCINDEX_LTC1
Analog LTC 1.
Definition: ntv2enums.h:3938
NTV2_FORMAT_4x4096x2160p_5994
@ NTV2_FORMAT_4x4096x2160p_5994
Definition: ntv2enums.h:707
NTV2_FORMAT_4x2048x1080p_2400
@ NTV2_FORMAT_4x2048x1080p_2400
Definition: ntv2enums.h:598
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:628
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:173
NTV2_FORMAT_4x1920x1080p_2400
@ NTV2_FORMAT_4x1920x1080p_2400
Definition: ntv2enums.h:592
NTV2_FORMAT_4x1920x1080psf_2400
@ NTV2_FORMAT_4x1920x1080psf_2400
Definition: ntv2enums.h:589
NTV2_FG_1920x1080
@ NTV2_FG_1920x1080
1920x1080, for 1080i and 1080p, NTV2_VANCMODE_OFF
Definition: ntv2enums.h:344
NTV2DeviceCanDo12GIn
bool NTV2DeviceCanDo12GIn(NTV2DeviceID boardID, UWord index0)
Definition: ntv2devicefeatures.cpp:107
NTV2_FORMAT_720p_2500
@ NTV2_FORMAT_720p_2500
Definition: ntv2enums.h:562
NTV2_FORMAT_1080psf_2500_2
@ NTV2_FORMAT_1080psf_2500_2
Definition: ntv2enums.h:568
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:638
NTV2_FORMAT_1080p_2400
@ NTV2_FORMAT_1080p_2400
Definition: ntv2enums.h:552
NTV2_FORMAT_1080i_6000
@ NTV2_FORMAT_1080i_6000
Definition: ntv2enums.h:543
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:222
DEVICE_ID_IP25_R
@ DEVICE_ID_IP25_R
Definition: ntv2enums.h:93
NTV2_Wgt3GSDIIn3
@ NTV2_Wgt3GSDIIn3
Definition: ntv2enums.h:2914
NTV2DeviceCanDoLTCOutN
bool NTV2DeviceCanDoLTCOutN(const NTV2DeviceID devID, UWord index0)
Definition: ntv2devicefeatures.cpp:1176
NTV2DeviceGetMaxAudioChannels
UWord NTV2DeviceGetMaxAudioChannels(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:9459
NTV2_OUTPUTDESTINATION_SDI5
@ NTV2_OUTPUTDESTINATION_SDI5
Definition: ntv2enums.h:1321
NTV2_STANDARD_3840i
@ NTV2_STANDARD_3840i
Identifies Ultra-High-Definition (UHD) psf.
Definition: ntv2enums.h:175
NTV2_FORMAT_3840x2160p_3000
@ NTV2_FORMAT_3840x2160p_3000
Definition: ntv2enums.h:641
NTV2_FORMAT_1080psf_2400
@ NTV2_FORMAT_1080psf_2400
Definition: ntv2enums.h:547
NTV2DeviceGetFrameBufferSize_Ex
ULWord NTV2DeviceGetFrameBufferSize_Ex(NTV2DeviceID boardID)
Definition: ntv2devicefeatures.cpp:256
NTV2DeviceROMHasBankSelect
bool NTV2DeviceROMHasBankSelect(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.cpp:1151
NTV2_FORMAT_4096x2160p_5994
@ NTV2_FORMAT_4096x2160p_5994
Definition: ntv2enums.h:665
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:1315
NTV2DeviceGetSPIFlashVersion
UWord NTV2DeviceGetSPIFlashVersion(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:13059
NTV2DeviceCanDoVITC2
bool NTV2DeviceCanDoVITC2(const NTV2DeviceID inDeviceID)
Definition: ntv2devicefeatures.hpp:6017
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:606
NTV2_WgtSDIIn2
@ NTV2_WgtSDIIn2
Definition: ntv2enums.h:2911
NTV2_AUDIOSYSTEM_INVALID
@ NTV2_AUDIOSYSTEM_INVALID
Definition: ntv2enums.h:3885
NTV2_FORMAT_1080p_2K_2997
@ NTV2_FORMAT_1080p_2K_2997
Definition: ntv2enums.h:622
DEVICE_ID_IOEXPRESS
@ DEVICE_ID_IOEXPRESS
See Io Express.
Definition: ntv2enums.h:37