AJA NTV2 SDK  17.5.0.1242
NTV2 SDK 17.5.0.1242
ntv2utils.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MIT */
8 #ifndef NTV2UTILS_H
9 #define NTV2UTILS_H
10 
11 #include "ajaexport.h"
12 #include "ajatypes.h"
13 #include "ntv2enums.h"
14 #include "ntv2videodefines.h"
15 #include "ntv2publicinterface.h"
16 #include "ntv2formatdescriptor.h"
17 #include "ntv2m31enums.h"
18 #include <string>
19 #include <iostream>
20 #include <vector>
21 #if defined (AJALinux)
22  #include <stdint.h>
23 #endif
24 
25 #define Enum2Str(e) {e, #e},
26 // BEGIN SECTION MOVED FROM 'videoutilities.h'
29 #define DEFAULT_PATT_GAIN 0.9 // some patterns pay attention to this...
30 #define HD_NUMCOMPONENTPIXELS_2K 2048
31 #define HD_NUMCOMPONENTPIXELS_1080_2K 2048
32 #define HD_NUMCOMPONENTPIXELS_1080 1920
33 
34 #define CCIR601_10BIT_BLACK 64 // 0x040
35 #define CCIR601_10BIT_WHITE 940 // 0x3AC
36 #define CCIR601_10BIT_CHROMAOFFSET 512 // 0x200
37 
38 #define CCIR601_8BIT_BLACK 16 // 0x10
39 #define CCIR601_8BIT_WHITE 235 // 0xEB
40 #define CCIR601_8BIT_CHROMAOFFSET 128 // 0x80
41 
42 // line pitch is in bytes.
43 #define FRAME_0_BASE (0x0)
44 #define FRAME_1080_10BIT_LINEPITCH (1280*4)
45 #define FRAME_1080_8BIT_LINEPITCH (1920*2)
46 #define FRAME_QUADHD_10BIT_SIZE (FRAME_1080_10BIT_LINEPITCH*2160)
47 #define FRAME_QUADHD_8BIT_SIZE (FRAME_1080_8BIT_LINEPITCH*2160)
48 #define FRAME_BASE(__frameNum__,__frameSize__) ((__frameNum__)*(__frameSize__))
49 
50 AJAExport NTV2_SHOULD_BE_DEPRECATED(uint32_t CalcRowBytesForFormat (const NTV2FrameBufferFormat inPF, const uint32_t pixWidth));
51 AJAExport void UnPack10BitYCbCrBuffer (uint32_t* packedBuffer, uint16_t* ycbcrBuffer, uint32_t numPixels);
52 AJAExport void PackTo10BitYCbCrBuffer (const uint16_t *ycbcrBuffer, uint32_t *packedBuffer, const uint32_t numPixels);
53 AJAExport void MakeUnPacked10BitYCbCrBuffer (uint16_t* buffer, uint16_t Y , uint16_t Cb , uint16_t Cr,uint32_t numPixels);
54 AJAExport void ConvertLineTo8BitYCbCr (const uint16_t * ycbcr10BitBuffer, uint8_t * ycbcr8BitBuffer, const uint32_t numPixels);
55 AJAExport void ConvertUnpacked10BitYCbCrToPixelFormat (uint16_t *unPackedBuffer, uint32_t *packedBuffer, uint32_t numPixels, NTV2FrameBufferFormat pixelFormat,
56  bool bUseSmpteRange=false, bool bAlphaFromLuma=false);
57 AJAExport void MaskUnPacked10BitYCbCrBuffer (uint16_t* ycbcrUnPackedBuffer, uint16_t signalMask , uint32_t numPixels);
58 AJAExport void StackQuadrants (uint8_t* pSrc, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcRowBytes, uint8_t* pDst);
59 AJAExport void CopyFromQuadrant (uint8_t* srcBuffer, uint32_t srcHeight, uint32_t srcRowBytes, uint32_t srcQuadrant, uint8_t* dstBuffer, uint32_t quad13Offset=0);
60 AJAExport void CopyToQuadrant (uint8_t* srcBuffer, uint32_t srcHeight, uint32_t srcRowBytes, uint32_t dstQuadrant, uint8_t* dstBuffer, uint32_t quad13Offset=0);
62 // END SECTION MOVED FROM 'videoutilities.h'
64 
74 AJAExport bool UnpackLine_10BitYUVtoUWordSequence (const void * pIn10BitYUVLine, UWordSequence & out16BitYUVLine, ULWord inNumPixels);
75 
84 AJAExport bool PackLine_UWordSequenceTo10BitYUV (const UWordSequence & in16BitYUVLine, ULWord * pOut10BitYUVLine, const ULWord inNumPixels);
85 
96 AJAExport bool YUVComponentsTo10BitYUVPackedBuffer (const std::vector<uint16_t> & inYCbCrLine, NTV2Buffer & inFrameBuffer,
97  const NTV2FormatDescriptor & inDescriptor, const UWord inLineOffset);
98 
110 AJAExport bool UnpackLine_10BitYUVtoU16s (std::vector<uint16_t> & outYCbCrLine, const NTV2Buffer & inFrameBuffer,
111  const NTV2FormatDescriptor & inDescriptor, const UWord inLineOffset);
112 
120 AJAExport void UnpackLine_10BitYUVto16BitYUV (const ULWord * pIn10BitYUVLine, UWord * pOut16BitYUVLine, const ULWord inNumPixels);
121 
129 AJAExport void PackLine_16BitYUVto10BitYUV (const UWord * pIn16BitYUVLine, ULWord * pOut10BitYUVLine, const ULWord inNumPixels);
130 
131 AJAExport void RePackLineDataForYCbCrDPX (ULWord *packedycbcrLine, ULWord numULWords);
132 AJAExport void UnPack10BitDPXtoRGBAlpha10BitPixel (RGBAlpha10BitPixel* rgba10BitBuffer, const ULWord * DPXLinebuffer, ULWord numPixels, bool bigEndian);
133 AJAExport void UnPack10BitDPXtoForRP215withEndianSwap(UWord* rawrp215Buffer,ULWord* DPXLinebuffer ,ULWord numPixels);
134 AJAExport void UnPack10BitDPXtoForRP215(UWord* rawrp215Buffer,ULWord* DPXLinebuffer ,ULWord numPixels);
135 AJAExport void MaskYCbCrLine(UWord* ycbcrLine, UWord signalMask , ULWord numPixels);
136 
147 AJAExport void Make10BitBlackLine (UWord * pOutLineData, const ULWord inNumPixels = 1920);
148 
159 AJAExport void Make10BitWhiteLine (UWord * pOutLineData, const ULWord inNumPixels = 1920);
160 
164 AJAExport bool Fill10BitYCbCrVideoFrame (void * pBaseVideoAddress,
165  const NTV2Standard inStandard,
166  const NTV2FrameBufferFormat inPixelFormat,
167  const YCbCr10BitPixel inPixelColor,
168  const NTV2VANCMode inVancMode = NTV2_VANCMODE_OFF);
169 
172 AJAExport void Make10BitLine(UWord* lineData, const UWord Y, const UWord Cb, const UWord Cr, const ULWord numPixels = 1920);
173 AJAExport void Make8BitLine(UByte* lineData, UByte Y , UByte Cb , UByte Cr,ULWord numPixels=1920,NTV2FrameBufferFormat=NTV2_FBF_8BIT_YCBCR);
174 AJAExport bool Fill8BitYCbCrVideoFrame (void * pBaseVideoAddress, const NTV2Standard inStandard, const NTV2FrameBufferFormat inFBF,
175  const YCbCrPixel inPixelColor, const NTV2VANCMode inVancMode = NTV2_VANCMODE_OFF);
176 AJAExport void Fill4k8BitYCbCrVideoFrame(PULWord _baseVideoAddress,
177  NTV2FrameBufferFormat frameBufferFormat,
178  YCbCrPixel color,
179  bool vancEnabled=false,
180  bool b4k=false,
181  bool wideVANC=false);
182 AJAExport void CopyRGBAImageToFrame(ULWord* pSrcBuffer, ULWord srcHeight, ULWord srcWidth,
183  ULWord* pDstBuffer, ULWord dstHeight, ULWord dstWidth);
184 
199 AJAExport bool SetRasterLinesBlack (const NTV2PixelFormat inPixelFormat,
200  UByte * pDstBuffer,
201  const ULWord inDstBytesPerLine,
202  const UWord inDstTotalLines);
203 
218 AJAExport bool SetRasterLinesWhite (const NTV2PixelFormat inPixelFormat,
219  UByte * pDstBuffer,
220  const ULWord inDstBytesPerLine,
221  const UWord inDstTotalLines);
222 
276 AJAExport bool CopyRaster (const NTV2PixelFormat inPixelFormat,
277  UByte * pDstBuffer,
278  const ULWord inDstBytesPerLine,
279  const UWord inDstTotalLines,
280  const UWord inDstVertLineOffset,
281  const UWord inDstHorzPixelOffset,
282  const UByte * pSrcBuffer,
283  const ULWord inSrcBytesPerLine,
284  const UWord inSrcTotalLines,
285  const UWord inSrcVertLineOffset,
286  const UWord inSrcVertLinesToCopy,
287  const UWord inSrcHorzPixelOffset,
288  const UWord inSrcHorzPixelsToCopy);
289 
290 AJAExport NTV2Standard GetNTV2StandardFromScanGeometry (const UByte inScanGeometry, const bool inIsProgressiveTransport);
291 
297 
304 
311 
312 #define GetHdmiV2StandardFromVideoFormat(__vf__) ::GetNTV2StandardFromVideoFormat (__vf__)
313 
322  const NTV2FrameBufferFormat inFBFormat,
323  const NTV2VANCMode inVancMode = NTV2_VANCMODE_OFF);
324 
325 
339  const NTV2FrameBufferFormat inFBFormat,
340  const NTV2VANCMode inVancMode = NTV2_VANCMODE_OFF);
341 
343 AJAExport NTV2VideoFormat GetQuadSizedVideoFormat (const NTV2VideoFormat inVideoFormat, const bool isSquareDivision = true);
347 AJAExport NTV2Standard Get4xSizedStandard (const NTV2Standard inGeometry, const bool bIs4k = false);
348 
349 AJAExport double GetFramesPerSecond (const NTV2FrameRate inFrameRate);
350 inline double GetFrameTime (const NTV2FrameRate inFrameRate) {return double(1.0) / GetFramesPerSecond(inFrameRate);}
351 
363  const UWord inHeightLines,
364  const UWord inWidthPixels,
365  const bool inIsInterlaced,
366  const bool inIsLevelB,
367  const bool inIsPSF);
368 
380 AJAExport bool GetFramesPerSecond (const NTV2FrameRate inFrameRate, ULWord & outFractionNumerator, ULWord & outFractionDenominator);
381 
392 
408 AJAExport ULWord GetAudioSamplesPerFrame (const NTV2FrameRate inFrameRate, const NTV2AudioRate inAudioRate, ULWord inCadenceFrame = 0, bool inIsSMPTE372Enabled = false);
410 
417 AJAExport double GetAudioSamplesPerSecond (const NTV2AudioRate inAudioRate); // New in SDK 16.2
418 
419 AJAExport NTV2_SHOULD_BE_DEPRECATED(ULWord GetVaricamRepeatCount (const NTV2FrameRate inSequenceRate, const NTV2FrameRate inPlayRate, const ULWord inCadenceFrame = 0));
421 AJAExport NTV2FrameRate GetFrameRateFromScale (long scale, long duration, NTV2FrameRate playFrameRate);
422 AJAExport NTV2FrameRate GetNTV2FrameRateFromNumeratorDenominator (const ULWord inNumerator, const ULWord inDenominator); // New in SDK 16.0
423 
432 
439 
446 AJAExport NTV2FrameGeometry GetVANCFrameGeometry (const NTV2FrameGeometry inFrameGeometry, const NTV2VANCMode inVancMode);
447 
454 
461 AJAExport bool HasVANCGeometries (const NTV2FrameGeometry inFrameGeometry);
462 
472 
479 
486 
493 
499 
506 AJAExport NTV2Standard GetStandardFromGeometry (const NTV2FrameGeometry inGeometry, const bool inIsProgressive = true);
507 
508 AJAExport ULWord GetDisplayWidth (const NTV2VideoFormat videoFormat);
513 
516 
530 
532 AJAExport bool IsTransportCompatibleFormat (const NTV2VideoFormat inFormat1, const NTV2VideoFormat inFormat2);
533 
541 
547 AJAExport ULWord GetIndexForNTV2InputSource (const NTV2InputSource inValue); // 0-based index
548 
555 
562 
570 AJAExport NTV2TCIndex NTV2ChannelToTimecodeIndex (const NTV2Channel inChannel, const bool inEmbeddedLTC = false, const bool inIsF2 = false);
571 
577 
584 
591 
592 
593 #define GetTCIndexesForSDIInput GetTCIndexesForSDIConnector
594 #define NTV2ChannelToCaptureCrosspoint NTV2ChannelToInputCrosspoint
595 #define NTV2ChannelToIngestCrosspoint NTV2ChannelToInputCrosspoint
596 #define NTV2ChannelToInputChannelSpec NTV2ChannelToInputCrosspoint
597 #define NTV2ChannelToPlayoutCrosspoint NTV2ChannelToOutputCrosspoint
598 #define NTV2ChannelToOutputChannelSpec NTV2ChannelToOutputCrosspoint
599 
600 
607 
614 
621 
628 
634 
641 
648 
655 
662 
669 AJAExport NTV2TimecodeIndex NTV2InputSourceToTimecodeIndex (const NTV2InputSource inInputSource, const bool inEmbeddedLTC = false);
670 
677 
685 
692 
701 
708 
714 AJAExport bool IsMultiFormatCompatible (const NTV2FrameRate inFrameRate1, const NTV2FrameRate inFrameRate2);
715 
721 AJAExport bool IsMultiFormatCompatible (const NTV2VideoFormat inFormat1, const NTV2VideoFormat inFormat2);
722 
723 AJAExport bool IsPSF (const NTV2VideoFormat format);
726 AJAExport bool IsProgressiveTransport (const NTV2Standard format);
727 AJAExport bool IsRGBFormat (const NTV2FrameBufferFormat format);
728 AJAExport bool IsYCbCrFormat (const NTV2FrameBufferFormat format);
730 AJAExport bool Is2KFormat (const NTV2VideoFormat format);
731 AJAExport bool Is4KFormat (const NTV2VideoFormat format);
732 AJAExport bool Is8KFormat (const NTV2VideoFormat format);
733 AJAExport bool IsRaw (const NTV2FrameBufferFormat format);
735 AJAExport bool IsVideoFormatA (const NTV2VideoFormat format);
736 AJAExport bool IsVideoFormatB (const NTV2VideoFormat format);
738 
739 
740 AJAExport int RecordCopyAudio (PULWord pAja, PULWord pSR, int iStartSample, int iNumBytes, int iChan0,
741  int iNumChans, bool bKeepAudio24Bits);
742 
760 AJAExport bool AddAudioTone ( ULWord & outNumBytesWritten,
761  NTV2Buffer & inAudioBuffer,
762  ULWord & inOutCurrentSample,
763  const ULWord inNumSamples,
764  const double inSampleRate,
765  const double inAmplitude,
766  const double inFrequency,
767  const ULWord inNumBits,
768  const bool inByteSwap,
769  const ULWord inNumChannels);
770 
789 AJAExport ULWord AddAudioTone ( ULWord * pAudioBuffer,
790  ULWord & inOutCurrentSample,
791  const ULWord inNumSamples,
792  const double inSampleRate,
793  const double inAmplitude,
794  const double inFrequency,
795  const ULWord inNumBits,
796  const bool inByteSwap,
797  const ULWord inNumChannels);
798 
819 AJAExport ULWord AddAudioTone ( ULWord * pAudioBuffer,
820  ULWord & inOutCurrentSample,
821  const ULWord inNumSamples,
822  const double inSampleRate,
823  const double * pInAmplitudes,
824  const double * pInFrequencies,
825  const ULWord inNumBits,
826  const bool inByteSwap,
827  const ULWord inNumChannels);
828 
847 AJAExport ULWord AddAudioTone ( UWord * pAudioBuffer,
848  ULWord & inOutCurrentSample,
849  const ULWord inNumSamples,
850  const double inSampleRate,
851  const double inAmplitude,
852  const double inFrequency,
853  const ULWord inNumBits,
854  const bool inByteSwap,
855  const ULWord inNumChannels);
856 
858  ULWord & inOutCurrentSample,
859  const ULWord inNumSamples,
860  const ULWord inModulus,
861  const bool inEndianConvert,
862  const ULWord inNumChannels);
863 
870 AJAExport std::ostream & operator << (std::ostream & inOutStream, const NTV2FrameDimensions inFrameDimensions);
871 
872 
878 {
882 private:
883  NTV2Standard mStandard;
884 
885 public:
890  explicit NTV2SmpteLineNumber (const NTV2Standard inStandard = NTV2_STANDARD_INVALID);
891 
895  inline bool IsValid (void) const {return NTV2_IS_VALID_STANDARD (mStandard) && smpteFirstActiveLine;}
896 
903  ULWord GetFirstActiveLine (const NTV2FieldID inRasterFieldID = NTV2_FIELD0) const;
904 
911  ULWord GetLastLine (const NTV2FieldID inRasterFieldID = NTV2_FIELD0) const;
912 
917  bool operator == (const NTV2SmpteLineNumber & inRHS) const;
918 
924  std::ostream & Print (std::ostream & inOutStream) const;
925 
933  std::string PrintLineNumber (const ULWord inLineOffset = 0, const NTV2FieldID inRasterFieldID = NTV2_FIELD0) const;
934 
935 private:
936  explicit inline NTV2SmpteLineNumber (const ULWord inFirstActiveLine,
937  const ULWord inSecondActiveLine,
938  const bool inFirstFieldTop,
939  const NTV2Standard inStandard)
940  : smpteFirstActiveLine (inFirstActiveLine),
941  smpteSecondActiveLine (inSecondActiveLine),
942  firstFieldTop (inFirstFieldTop),
943  mStandard (inStandard) { }
944 
946 
947 
954 AJAExport std::ostream & operator << (std::ostream & inOutStream, const NTV2SmpteLineNumber & inSmpteLineNumber);
955 
956 
963 inline NTV2SmpteLineNumber GetSmpteLineNumber (const NTV2Standard inStandard) {return NTV2SmpteLineNumber (inStandard);}
964 
965 
970 {
971  public:
972  explicit inline NTV2ACFrameRange (const UWord inFrameCount = 0)
973  {
974  setCountOnly(inFrameCount);
975  }
976  explicit inline NTV2ACFrameRange (const UWord inFirstFrame, const UWord inLastFrame)
977  {
978  setExactRange (inFirstFrame, inLastFrame);
979  }
980  inline bool isCountOnly (void) const {return mIsCountOnly;} // @return True if simply a frame count
981  inline bool isFrameRange (void) const {return !isCountOnly();} // @return True if a specific frame range
982  inline UWord count (void) const {return isCountOnly() ? mFrameCount : 0;} // @return Frame count (if isCountOnly); otherwise zero
983  inline UWord firstFrame (void) const {return mFirstFrame;} // @return
984  inline UWord lastFrame (void) const {return mLastFrame;}
985  inline bool valid (void) const
986  {
987  if (isCountOnly())
988  return count() > 0;
989  return lastFrame() >= firstFrame();
990  }
992  {
993  mIsCountOnly = true;
994  mFrameCount = mFirstFrame = mLastFrame = 0;
995  return *this;
996  }
997  inline bool setExactRange (const UWord inFirstFrame, const UWord inLastFrame)
998  {
999  mIsCountOnly = false;
1000  mFrameCount = 0;
1001  mFirstFrame = inFirstFrame;
1002  mLastFrame = inLastFrame;
1003  return valid();
1004  }
1005  inline bool setRangeWithCount (const UWord inCount, const UWord inFirstFrame)
1006  {
1007  mIsCountOnly = false;
1008  mFrameCount = 0;
1009  mFirstFrame = inFirstFrame;
1010  mLastFrame = mFirstFrame + inCount - 1;
1011  return valid();
1012  }
1013  inline bool setCountOnly (const UWord inCount)
1014  {
1015  mIsCountOnly = true;
1016  mFrameCount = inCount;
1017  mFirstFrame = mLastFrame = 0;
1018  return valid();
1019  }
1020  std::string setFromString (const std::string & inStr);
1021  std::string toString (const bool inNormalized = false) const;
1022 
1023  private:
1024  bool mIsCountOnly;
1025  UWord mFrameCount;
1026  UWord mFirstFrame;
1027  UWord mLastFrame;
1028 
1029 }; // NTV2ACFrameRange
1030 
1031 
1032 typedef std::vector <NTV2DeviceID> NTV2DeviceIDList;
1033 typedef NTV2DeviceIDList::iterator NTV2DeviceIDListIter;
1034 typedef NTV2DeviceIDList::const_iterator NTV2DeviceIDListConstIter;
1035 
1036 AJAExport std::ostream & operator << (std::ostream & inOutStr, const NTV2DeviceIDList & inSet);
1037 
1038 
1039 typedef std::set <NTV2DeviceID> NTV2DeviceIDSet;
1040 typedef NTV2DeviceIDSet::iterator NTV2DeviceIDSetIter;
1041 typedef NTV2DeviceIDSet::const_iterator NTV2DeviceIDSetConstIter;
1042 
1049 
1050 AJAExport std::ostream & operator << (std::ostream & inOutStr, const NTV2DeviceIDSet & inSet);
1051 
1059 AJAExport UWord NTV2GetSDKVersionComponent (const int inVersionComponent = 0); // New in SDK 16.1
1060 
1061 
1062 typedef std::vector <NTV2OutputCrosspointID> NTV2OutputCrosspointIDs;
1063 typedef NTV2OutputCrosspointIDs::iterator NTV2OutputCrosspointIDsIter;
1064 typedef NTV2OutputCrosspointIDs::const_iterator NTV2OutputCrosspointIDsConstIter;
1065 
1066 AJAExport std::ostream & operator << (std::ostream & inOutStr, const NTV2OutputCrosspointIDs & inList);
1067 
1068 
1069 typedef std::vector <NTV2InputCrosspointID> NTV2InputCrosspointIDs;
1070 typedef NTV2InputCrosspointIDs::iterator NTV2InputCrosspointIDsIter;
1071 typedef NTV2InputCrosspointIDs::const_iterator NTV2InputCrosspointIDsConstIter;
1072 
1073 AJAExport std::ostream & operator << (std::ostream & inOutStr, const NTV2OutputCrosspointIDs & inList);
1074 
1075 
1076 AJAExport std::string NTV2DeviceIDToString (const NTV2DeviceID inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1077 AJAExport std::string NTV2VideoFormatToString (const NTV2VideoFormat inValue, const bool inUseFrameRate = false); // New in SDK 12.0
1078 AJAExport std::string NTV2StandardToString (const NTV2Standard inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1079 AJAExport std::string NTV2FrameBufferFormatToString (const NTV2FrameBufferFormat inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1080 AJAExport std::string NTV2M31VideoPresetToString (const M31VideoPreset inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1081 AJAExport std::string NTV2FrameGeometryToString (const NTV2FrameGeometry inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1082 AJAExport std::string NTV2FrameRateToString (const NTV2FrameRate inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1083 AJAExport std::string NTV2InputSourceToString (const NTV2InputSource inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1084 AJAExport std::string NTV2OutputDestinationToString (const NTV2OutputDestination inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1085 AJAExport std::string NTV2ReferenceSourceToString (const NTV2ReferenceSource inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1086 AJAExport std::string NTV2RegisterWriteModeToString (const NTV2RegisterWriteMode inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1087 AJAExport std::string NTV2InterruptEnumToString (const INTERRUPT_ENUMS inInterruptEnumValue);
1088 AJAExport std::string NTV2IpErrorEnumToString (const NTV2IpError inIpErrorEnumValue);
1089 AJAExport std::string NTV2ChannelToString (const NTV2Channel inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1090 AJAExport std::string NTV2AudioSystemToString (const NTV2AudioSystem inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1091 AJAExport std::string NTV2AudioRateToString (const NTV2AudioRate inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1092 AJAExport std::string NTV2AudioBufferSizeToString (const NTV2AudioBufferSize inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1093 AJAExport std::string NTV2AudioLoopBackToString (const NTV2AudioLoopBack inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1094 AJAExport std::string NTV2EmbeddedAudioClockToString (const NTV2EmbeddedAudioClock inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1095 AJAExport std::string NTV2GetBitfileName (const NTV2DeviceID inValue);
1096 AJAExport bool NTV2IsCompatibleBitfileName (const std::string & inBitfileName, const NTV2DeviceID inDeviceID);
1097 AJAExport NTV2DeviceID NTV2GetDeviceIDFromBitfileName (const std::string & inBitfileName);
1098 AJAExport std::string NTV2GetFirmwareFolderPath (void);
1099 AJAExport std::ostream & operator << (std::ostream & inOutStream, const RP188_STRUCT & inObj);
1100 AJAExport std::string NTV2GetVersionString (const bool inDetailed = false);
1101 AJAExport std::string NTV2RegisterNumberToString (const NTV2RegisterNumber inValue); // New in SDK 12.0
1102 AJAExport std::string AutoCircVidProcModeToString (const AutoCircVidProcMode inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1103 AJAExport std::string NTV2ColorCorrectionModeToString (const NTV2ColorCorrectionMode inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1104 AJAExport std::string NTV2InputCrosspointIDToString (const NTV2InputCrosspointID inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1105 AJAExport std::string NTV2OutputCrosspointIDToString (const NTV2OutputCrosspointID inValue, const bool inForRetailDisplay = false); // New in SDK 12.0
1106 AJAExport std::string NTV2WidgetIDToString (const NTV2WidgetID inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1107 AJAExport std::string NTV2WidgetTypeToString (const NTV2WidgetType inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1108 AJAExport std::string NTV2TaskModeToString (const NTV2EveryFrameTaskMode inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1109 AJAExport std::string NTV2RegNumSetToString (const NTV2RegisterNumberSet & inValue); // New in SDK 12.0
1110 AJAExport std::string NTV2TCIndexToString (const NTV2TCIndex inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1111 AJAExport std::string NTV2AudioChannelPairToString (const NTV2AudioChannelPair inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1112 AJAExport std::string NTV2AudioChannelQuadToString (const NTV2Audio4ChannelSelect inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1113 AJAExport std::string NTV2AudioChannelOctetToString (const NTV2Audio8ChannelSelect inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1114 AJAExport std::string NTV2FramesizeToString (const NTV2Framesize inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1115 AJAExport std::string NTV2ModeToString (const NTV2Mode inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1116 AJAExport std::string NTV2VANCModeToString (const NTV2VANCMode inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1117 AJAExport std::string NTV2MixerKeyerModeToString (const NTV2MixerKeyerMode inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1118 AJAExport std::string NTV2MixerInputControlToString (const NTV2MixerKeyerInputControl inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1119 AJAExport std::string NTV2VideoLimitingToString (const NTV2VideoLimiting inValue, const bool inCompactDisplay = false); // New in SDK 12.0
1120 AJAExport std::string NTV2BreakoutTypeToString (const NTV2BreakoutType inValue, const bool inCompactDisplay = false); // New in SDK 15.5
1121 AJAExport std::string NTV2AncDataRgnToStr (const NTV2AncDataRgn inValue, const bool inCompactDisplay = false); // New in SDK 15.5
1122 AJAExport std::string NTV2UpConvertModeToString (const NTV2UpConvertMode inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1123 AJAExport std::string NTV2DownConvertModeToString (const NTV2DownConvertMode inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1124 AJAExport std::string NTV2IsoConvertModeToString (const NTV2IsoConvertMode inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1125 AJAExport std::string NTV2ScanMethodToString (const NTV2ScanMethod inValue, const bool inCompactDisplay = false); // New in SDK 17.5
1126 
1127 AJAExport std::string NTV2HDMIBitDepthToString (const NTV2HDMIBitDepth inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1128 AJAExport std::string NTV2HDMIAudioChannelsToString (const NTV2HDMIAudioChannels inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1129 AJAExport std::string NTV2HDMIProtocolToString (const NTV2HDMIProtocol inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1130 AJAExport std::string NTV2HDMIRangeToString (const NTV2HDMIRange inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1131 AJAExport std::string NTV2HDMIColorSpaceToString (const NTV2HDMIColorSpace inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1132 AJAExport std::string NTV2AudioFormatToString (const NTV2AudioFormat inValue, const bool inCompactDisplay = false); // New in SDK 16.1
1133 
1134 AJAExport std::string NTV2BitfileTypeToString (const NTV2BitfileType inValue, const bool inCompactDisplay = false); // New in SDK 16.2
1135 AJAExport bool convertHDRFloatToRegisterValues (const HDRFloatValues & inFloatValues, HDRRegValues & outRegisterValues);
1136 AJAExport bool convertHDRRegisterToFloatValues (const HDRRegValues & inRegisterValues, HDRFloatValues & outFloatValues);
1137 AJAExport void setHDRDefaultsForBT2020 (HDRRegValues & outRegisterValues);
1138 AJAExport void setHDRDefaultsForDCIP3 (HDRRegValues & outRegisterValues);
1139 #if !defined(NTV2_DEPRECATE_16_1)
1140  inline std::string NTV2AudioMonitorSelectToString (const NTV2AudioMonitorSelect inValue, const bool inForRetailDisplay = false) {return NTV2AudioChannelPairToString(inValue, inForRetailDisplay);}
1141 #endif // !defined(NTV2_DEPRECATE_16_1)
1142 
1143 typedef std::vector <std::string> NTV2StringList; // New in SDK 12.5
1144 typedef NTV2StringList::iterator NTV2StringListIter; // New in SDK 16.0
1145 typedef NTV2StringList::const_iterator NTV2StringListConstIter;// New in SDK 12.5
1146 typedef std::set <std::string> NTV2StringSet; // New in SDK 12.5
1147 typedef NTV2StringSet::const_iterator NTV2StringSetConstIter; // New in SDK 12.5
1148 
1149 AJAExport std::string NTV2EmbeddedAudioInputToString (const NTV2EmbeddedAudioInput inValue, const bool inCompactDisplay = false); // New in SDK 13.0
1150 AJAExport std::string NTV2AudioSourceToString (const NTV2AudioSource inValue, const bool inCompactDisplay = false); // New in SDK 13.0
1151 
1152 AJAExport std::ostream & operator << (std::ostream & inOutStream, const NTV2StringList & inData); // New in SDK 15.5
1153 AJAExport std::ostream & operator << (std::ostream & inOutStream, const NTV2StringSet & inData);
1154 
1155 
1158 AJAExport bool GetRegNumChanges (const NTV2RegNumSet & inBefore, const NTV2RegNumSet & inAfter, NTV2RegNumSet & outGone, NTV2RegNumSet & outSame, NTV2RegNumSet & outAdded);
1159 AJAExport bool GetChangedRegisters (const NTV2RegisterReads & inBefore, const NTV2RegisterReads & inAfter, NTV2RegNumSet & outChanged); // New in SDK 16.0
1160 
1161 AJAExport std::string PercentEncode (const std::string & inStr);
1162 AJAExport std::string PercentDecode (const std::string & inStr);
1163 AJAExport bool StringToSerialNum64 (const std::string & inSerNumStr, uint64_t & outSerNum); // New in SDK 16.3
1164 AJAExport std::string SerialNum64ToString (const uint64_t & inSerNum); // New in SDK 16.3
1165 
1166 
1167 // FUTURE ** THESE WILL BE DISAPPEARING ** Deprecate in favor of the new "NTV2xxxxxxToString" functions...
1168 #define NTV2CrosspointIDToString NTV2OutputCrosspointIDToString
1169 #if defined (AJAMac)
1170  AJAExport bool GetInstalledMacDriverVersion (UWord & outMaj, UWord & outMin, UWord & outPt, UWord & outBld, UWord & outType);
1171 #endif // AJAMac
1172 
1173 #endif // NTV2UTILS_H
setHDRDefaultsForBT2020
void setHDRDefaultsForBT2020(HDRRegValues &outRegisterValues)
Definition: ntv2utils.cpp:7918
NTV2InputSourceToReferenceSource
NTV2ReferenceSource NTV2InputSourceToReferenceSource(const NTV2InputSource inInputSource)
Converts a given NTV2InputSource to its equivalent NTV2ReferenceSource value.
Definition: ntv2utils.cpp:5083
NTV2TimecodeIndexToChannel
NTV2Channel NTV2TimecodeIndexToChannel(const NTV2TCIndex inTCIndex)
Converts the given NTV2TCIndex value into the appropriate NTV2Channel value.
Definition: ntv2utils.cpp:5039
NTV2AncDataRgnToStr
std::string NTV2AncDataRgnToStr(const NTV2AncDataRgn inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6624
GetScaleFromFrameRate
ULWord GetScaleFromFrameRate(const NTV2FrameRate inFrameRate)
Definition: ntv2utils.cpp:3354
NTV2ChannelToInputSource
NTV2InputSource NTV2ChannelToInputSource(const NTV2Channel inChannel, const NTV2IOKinds inKinds=NTV2_IOKINDS_SDI)
Definition: ntv2utils.cpp:5192
NTV2InputSourceToChannel
NTV2Channel NTV2InputSourceToChannel(const NTV2InputSource inInputSource)
Converts a given NTV2InputSource to its equivalent NTV2Channel value.
Definition: ntv2utils.cpp:5107
GetNTV2ChannelForIndex
NTV2Channel GetNTV2ChannelForIndex(const ULWord inIndex0)
Definition: ntv2utils.cpp:4757
ajaexport.h
Defines the import/export macros for producing DLLs or LIBs.
NTV2ACFrameRange::isFrameRange
bool isFrameRange(void) const
Definition: ntv2utils.h:981
CalcRowBytesForFormat
uint32_t CalcRowBytesForFormat(const NTV2FrameBufferFormat inPF, const uint32_t pixWidth)
Definition: ntv2utils.cpp:45
NTV2FrameGeometryToString
std::string NTV2FrameGeometryToString(const NTV2FrameGeometry inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:7197
NTV2DeviceIDListConstIter
NTV2DeviceIDList::const_iterator NTV2DeviceIDListConstIter
A convenient const iterator for NTV2DeviceIDList.
Definition: ntv2utils.h:1034
GetFrameTime
double GetFrameTime(const NTV2FrameRate inFrameRate)
Definition: ntv2utils.h:350
NTV2HDMIBitDepth
NTV2HDMIBitDepth
Indicates or specifies the HDMI video bit depth.
Definition: ntv2enums.h:3645
INTERRUPT_ENUMS
enum _INTERRUPT_ENUMS_ INTERRUPT_ENUMS
NTV2OutputDestination
NTV2OutputDestination
Identifies a specific video output destination.
Definition: ntv2enums.h:1301
NTV2ACFrameRange::firstFrame
UWord firstFrame(void) const
Definition: ntv2utils.h:983
NTV2DeviceIDSetIter
NTV2DeviceIDSet::iterator NTV2DeviceIDSetIter
A convenient non-const iterator for NTV2DeviceIDSet.
Definition: ntv2utils.h:1040
NTV2FrameDimensions
Describes the horizontal and vertical size dimensions of a raster, bitmap, frame or image.
Definition: ntv2publicinterface.h:5659
GetSupportedNTV2VideoFormatFromInputVideoFormat
NTV2VideoFormat GetSupportedNTV2VideoFormatFromInputVideoFormat(const NTV2VideoFormat inVideoFormat)
Definition: ntv2utils.cpp:2499
NTV2GetDeviceIDFromBitfileName
NTV2DeviceID NTV2GetDeviceIDFromBitfileName(const std::string &inBitfileName)
NTV2ACFrameRange::makeInvalid
NTV2ACFrameRange & makeInvalid(void)
Definition: ntv2utils.h:991
NTV2StringSet
std::set< std::string > NTV2StringSet
Definition: ntv2utils.h:1146
NTV2FormatDescriptor
Describes a video frame for a given video standard or format and pixel format, including the total nu...
Definition: ntv2formatdescriptor.h:41
GetRegNumChanges
bool GetRegNumChanges(const NTV2RegNumSet &inBefore, const NTV2RegNumSet &inAfter, NTV2RegNumSet &outGone, NTV2RegNumSet &outSame, NTV2RegNumSet &outAdded)
Definition: ntv2utils.cpp:8024
AutoCircVidProcMode
AutoCircVidProcMode
Definition: ntv2publicinterface.h:4193
NTV2TCIndexes
std::set< NTV2TCIndex > NTV2TCIndexes
Definition: ntv2publicinterface.h:6879
NTV2InputSourceToTimecodeIndex
NTV2TimecodeIndex NTV2InputSourceToTimecodeIndex(const NTV2InputSource inInputSource, const bool inEmbeddedLTC=false)
Converts a given NTV2InputSource to its equivalent NTV2TimecodeIndex value.
Definition: ntv2utils.cpp:5155
Is8BitFrameBufferFormat
bool Is8BitFrameBufferFormat(const NTV2FrameBufferFormat fbFormat)
Definition: ntv2utils.cpp:5512
HDRFloatValues
Definition: ntv2publicinterface.h:9882
NTV2GetSupportedDevices
NTV2DeviceIDSet NTV2GetSupportedDevices(const NTV2DeviceKinds inKinds=NTV2_DEVICEKIND_ALL)
Returns an NTV2DeviceIDSet of devices supported by the SDK.
Definition: ntv2utils.cpp:7591
GetNTV2FrameGeometryFromVideoFormat
NTV2FrameGeometry GetNTV2FrameGeometryFromVideoFormat(const NTV2VideoFormat inVideoFormat)
Definition: ntv2utils.cpp:2545
NTV2AudioFormat
NTV2AudioFormat
Definition: ntv2enums.h:1926
NTV2Channel
NTV2Channel
These enum values are mostly used to identify a specific widget_framestore. They're also commonly use...
Definition: ntv2enums.h:1334
NTV2HDMIColorSpace
NTV2HDMIColorSpace
Indicates or specifies HDMI Color Space.
Definition: ntv2enums.h:3558
NTV2AudioFormatToString
std::string NTV2AudioFormatToString(const NTV2AudioFormat inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6749
NTV2Buffer
A generic user-space buffer object that has an address and a length. Used most often to share an arbi...
Definition: ntv2publicinterface.h:6022
GetQuarterSizedGeometry
NTV2FrameGeometry GetQuarterSizedGeometry(const NTV2FrameGeometry inGeometry)
Definition: ntv2utils.cpp:2217
GetNTV2HDMIInputSourceForIndex
NTV2InputSource GetNTV2HDMIInputSourceForIndex(const ULWord inIndex0)
Definition: ntv2utils.cpp:5328
NTV2RegisterNumberSet
ULWordSet NTV2RegisterNumberSet
A set of distinct ULWord values.
Definition: ntv2publicinterface.h:7414
UnPack10BitDPXtoForRP215withEndianSwap
void UnPack10BitDPXtoForRP215withEndianSwap(UWord *rawrp215Buffer, ULWord *DPXLinebuffer, ULWord numPixels)
Definition: ntv2utils.cpp:669
NTV2WidgetType
NTV2WidgetType
Definition: ntv2enums.h:3004
GetTCIndexesForSDIConnector
NTV2TCIndexes GetTCIndexesForSDIConnector(const NTV2Channel inSDIConnector)
Definition: ntv2utils.cpp:5030
GetNTV2CrosspointInputForIndex
NTV2Crosspoint GetNTV2CrosspointInputForIndex(const ULWord inIndex0)
Definition: ntv2utils.cpp:4828
NTV2_STANDARD_INVALID
@ NTV2_STANDARD_INVALID
Definition: ntv2enums.h:176
NTV2AudioBufferSizeToString
std::string NTV2AudioBufferSizeToString(const NTV2AudioBufferSize inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:5829
GetNTV2FrameRateFromVideoFormat
NTV2FrameRate GetNTV2FrameRateFromVideoFormat(const NTV2VideoFormat inVideoFormat)
Definition: ntv2utils.cpp:3530
NTV2TimecodeIndex
enum NTV2TCIndex NTV2TimecodeIndex
GetVANCModeForGeometry
NTV2VANCMode GetVANCModeForGeometry(const NTV2FrameGeometry inFrameGeometry)
Definition: ntv2utils.cpp:3955
NTV2DownConvertModeToString
std::string NTV2DownConvertModeToString(const NTV2DownConvertMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6652
NTV2StringListIter
NTV2StringList::iterator NTV2StringListIter
Definition: ntv2utils.h:1144
GetTotalAudioSamplesFromFrameNbrZeroUpToFrameNbr
LWord64 GetTotalAudioSamplesFromFrameNbrZeroUpToFrameNbr(NTV2FrameRate frameRate, NTV2AudioRate audioRate, ULWord frameNbrNonInclusive)
Definition: ntv2utils.cpp:3046
NTV2InputCrosspointIDsConstIter
NTV2InputCrosspointIDs::const_iterator NTV2InputCrosspointIDsConstIter
A convenient const iterator for NTV2InputCrosspointIDs.
Definition: ntv2utils.h:1071
NTV2HDMIAudioChannels
NTV2HDMIAudioChannels
Indicates or specifies the HDMI audio channel count.
Definition: ntv2enums.h:3620
YUVComponentsTo10BitYUVPackedBuffer
bool YUVComponentsTo10BitYUVPackedBuffer(const std::vector< uint16_t > &inYCbCrLine, NTV2Buffer &inFrameBuffer, const NTV2FormatDescriptor &inDescriptor, const UWord inLineOffset)
Packs up to one raster line of uint16_t YUV components into an NTV2_FBF_10BIT_YCBCR frame buffer.
NTV2GetSDKVersionComponent
UWord NTV2GetSDKVersionComponent(const int inVersionComponent=0)
Returns an SDK version component value.
Definition: ntv2utils.cpp:7736
NTV2OutputDestinationToChannel
NTV2Channel NTV2OutputDestinationToChannel(const NTV2OutputDestination inOutputDest)
Converts a given NTV2OutputDestination to its equivalent NTV2Channel value.
Definition: ntv2utils.cpp:5215
NTV2InputSourceToEmbeddedAudioInput
NTV2EmbeddedAudioInput NTV2InputSourceToEmbeddedAudioInput(const NTV2InputSource inInputSource)
Converts a given NTV2InputSource to its equivalent NTV2EmbeddedAudioInput value.
Definition: ntv2utils.cpp:4937
NTV2ACFrameRange::count
UWord count(void) const
Definition: ntv2utils.h:982
NTV2InterruptEnumToString
std::string NTV2InterruptEnumToString(const INTERRUPT_ENUMS inInterruptEnumValue)
Definition: ntv2utils.cpp:7343
NTV2GetFirmwareFolderPath
std::string NTV2GetFirmwareFolderPath(void)
Definition: ntv2utils.cpp:7569
NTV2GetBitfileName
std::string NTV2GetBitfileName(const NTV2DeviceID inValue)
Definition: ntv2utils.cpp:7448
NTV2DeviceID
NTV2DeviceID
Identifies a specific AJA NTV2 device model number. The NTV2DeviceID is actually the PROM part number...
Definition: ntv2enums.h:20
IsVideoFormatB
bool IsVideoFormatB(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5524
NTV2RegisterNumberToString
std::string NTV2RegisterNumberToString(const NTV2RegisterNumber inValue)
Definition: ntv2utils.cpp:7750
GetQuarterSizedStandard
NTV2Standard GetQuarterSizedStandard(const NTV2Standard inGeometry)
Definition: ntv2utils.cpp:2242
NTV2FieldID
NTV2FieldID
These values are used to identify fields for interlaced video. See Field/Frame Interrupts and CNTV2Ca...
Definition: ntv2enums.h:1815
NTV2FrameBufferFormat
NTV2FrameBufferFormat
Identifies a particular video frame buffer format. See Device Frame Buffer Formats for details.
Definition: ntv2enums.h:210
NTV2RegNumSetToString
std::string NTV2RegNumSetToString(const NTV2RegisterNumberSet &inValue)
Definition: ntv2utils.cpp:6413
IsProgressiveTransport
bool IsProgressiveTransport(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5457
ntv2videodefines.h
Declares common video macros and structs used in the SDK.
convertHDRRegisterToFloatValues
bool convertHDRRegisterToFloatValues(const HDRRegValues &inRegisterValues, HDRFloatValues &outFloatValues)
Definition: ntv2utils.cpp:7890
nlohmann::json_abiNLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON_v3_11_NLOHMANN_JSON_VERSION_PATCH::operator==
bool operator==(const json_pointer< RefStringTypeLhs > &lhs, const json_pointer< RefStringTypeRhs > &rhs) noexcept
Definition: json.hpp:14737
NTV2ColorCorrectionModeToString
std::string NTV2ColorCorrectionModeToString(const NTV2ColorCorrectionMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:7770
GetVANCFrameGeometry
NTV2FrameGeometry GetVANCFrameGeometry(const NTV2FrameGeometry inFrameGeometry, const NTV2VANCMode inVancMode)
Definition: ntv2utils.cpp:3803
NTV2DeviceIDSetConstIter
NTV2DeviceIDSet::const_iterator NTV2DeviceIDSetConstIter
A convenient const iterator for NTV2DeviceIDSet.
Definition: ntv2utils.h:1041
UnPack10BitYCbCrBuffer
void UnPack10BitYCbCrBuffer(uint32_t *packedBuffer, uint16_t *ycbcrBuffer, uint32_t numPixels)
Definition: ntv2utils.cpp:169
NTV2SmpteLineNumber::smpteFirstActiveLine
ULWord smpteFirstActiveLine
SMPTE line number of first (top-most) active line of video.
Definition: ntv2utils.h:879
PULWord
uint32_t * PULWord
Definition: ajatypes.h:256
NTV2ChannelToInputInterrupt
INTERRUPT_ENUMS NTV2ChannelToInputInterrupt(const NTV2Channel inChannel)
Converts the given NTV2Channel value into the equivalent input INTERRUPT_ENUMS value.
Definition: ntv2utils.cpp:4997
NTV2BreakoutTypeToString
std::string NTV2BreakoutTypeToString(const NTV2BreakoutType inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6605
NTV2StringSetConstIter
NTV2StringSet::const_iterator NTV2StringSetConstIter
Definition: ntv2utils.h:1147
NTV2ChannelToOutputDestination
NTV2OutputDestination NTV2ChannelToOutputDestination(const NTV2Channel inChannel, const NTV2IOKinds inKinds=NTV2_IOKINDS_SDI)
Converts the given NTV2Channel value into its ordinary equivalent NTV2OutputDestination.
Definition: ntv2utils.cpp:5227
NTV2AudioBufferSizeToByteCount
ULWord NTV2AudioBufferSizeToByteCount(const NTV2AudioBufferSize inBufferSize)
Converts the given NTV2BufferSize value into its exact byte count.
Definition: ntv2utils.cpp:5362
GetFramesPerSecond
double GetFramesPerSecond(const NTV2FrameRate inFrameRate)
Definition: ntv2utils.cpp:1737
NTV2OutputCrosspointIDsIter
NTV2OutputCrosspointIDs::iterator NTV2OutputCrosspointIDsIter
A convenient non-const iterator for NTV2OutputCrosspointIDs.
Definition: ntv2utils.h:1063
NTV2_FIELD0
@ NTV2_FIELD0
Identifies the first field in time for an interlaced video frame, or the first and only field in a pr...
Definition: ntv2enums.h:1817
NTV2EmbeddedAudioClockToString
std::string NTV2EmbeddedAudioClockToString(const NTV2EmbeddedAudioClock inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:5853
PercentEncode
std::string PercentEncode(const std::string &inStr)
setHDRDefaultsForDCIP3
void setHDRDefaultsForDCIP3(HDRRegValues &outRegisterValues)
Definition: ntv2utils.cpp:7936
GetIndexForNTV2Channel
ULWord GetIndexForNTV2Channel(const NTV2Channel inChannel)
Definition: ntv2utils.cpp:4762
NTV2HDMIRange
NTV2HDMIRange
Indicates or specifies the HDMI RGB range.
Definition: ntv2enums.h:3588
HasVANCGeometries
bool HasVANCGeometries(const NTV2FrameGeometry inFrameGeometry)
Definition: ntv2utils.cpp:3865
IsAlphaChannelFormat
bool IsAlphaChannelFormat(const NTV2FrameBufferFormat format)
Definition: ntv2utils.cpp:5482
NTV2ACFrameRange::NTV2ACFrameRange
NTV2ACFrameRange(const UWord inFrameCount=0)
Definition: ntv2utils.h:972
CopyRGBAImageToFrame
void CopyRGBAImageToFrame(ULWord *pSrcBuffer, ULWord srcHeight, ULWord srcWidth, ULWord *pDstBuffer, ULWord dstHeight, ULWord dstWidth)
Definition: ntv2utils.cpp:949
NTV2FrameRate
NTV2FrameRate
Identifies a particular video frame rate.
Definition: ntv2enums.h:399
NTV2ColorCorrectionMode
NTV2ColorCorrectionMode
Definition: ntv2enums.h:2054
NTV2FramesizeToByteCount
ULWord NTV2FramesizeToByteCount(const NTV2Framesize inFrameSize)
Converts the given NTV2Framesize value into an exact byte count.
Definition: ntv2utils.cpp:5347
GetNTV2FrameRateFromNumeratorDenominator
NTV2FrameRate GetNTV2FrameRateFromNumeratorDenominator(const ULWord inNumerator, const ULWord inDenominator)
Definition: ntv2utils.cpp:3488
NTV2AudioChannelQuadToString
std::string NTV2AudioChannelQuadToString(const NTV2Audio4ChannelSelect inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6490
ajatypes.h
Declares the most fundamental data types used by NTV2. Since Windows NT was the first principal devel...
NTV2InputSourceToAudioSystem
NTV2AudioSystem NTV2InputSourceToAudioSystem(const NTV2InputSource inInputSource)
Converts a given NTV2InputSource to its equivalent NTV2AudioSystem value.
Definition: ntv2utils.cpp:5131
PackLine_UWordSequenceTo10BitYUV
bool PackLine_UWordSequenceTo10BitYUV(const UWordSequence &in16BitYUVLine, ULWord *pOut10BitYUVLine, const ULWord inNumPixels)
Packs a line of 16-bit-per-component YCbCr (NTV2_FBF_10BIT_YCBCR) video into 10-bit-per-component YCb...
Definition: ntv2utils.cpp:544
GetChangedRegisters
bool GetChangedRegisters(const NTV2RegisterReads &inBefore, const NTV2RegisterReads &inAfter, NTV2RegNumSet &outChanged)
Definition: ntv2utils.cpp:8033
GetDisplayHeight
ULWord GetDisplayHeight(const NTV2VideoFormat videoFormat)
Definition: ntv2utils.cpp:4106
NTV2RegNumSet
NTV2RegisterNumberSet NTV2RegNumSet
A set of distinct NTV2RegisterNumbers.
Definition: ntv2publicinterface.h:7415
convertHDRFloatToRegisterValues
bool convertHDRFloatToRegisterValues(const HDRFloatValues &inFloatValues, HDRRegValues &outRegisterValues)
Definition: ntv2utils.cpp:7860
YCbCrPixel
Definition: ntv2videodefines.h:193
NTV2MixerKeyerInputControl
NTV2MixerKeyerInputControl
These enum values identify the Mixer/Keyer foreground and background input control values.
Definition: ntv2enums.h:1751
IsProgressivePicture
bool IsProgressivePicture(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5451
ConvertUnpacked10BitYCbCrToPixelFormat
void ConvertUnpacked10BitYCbCrToPixelFormat(uint16_t *unPackedBuffer, uint32_t *packedBuffer, uint32_t numPixels, NTV2FrameBufferFormat pixelFormat, bool bUseSmpteRange=false, bool bAlphaFromLuma=false)
Definition: ntv2utils.cpp:223
NTV2EmbeddedAudioClock
NTV2EmbeddedAudioClock
This enum value determines/states the device audio clock reference source. It was important to set th...
Definition: ntv2enums.h:1965
GetIndexForNTV2InputSource
ULWord GetIndexForNTV2InputSource(const NTV2InputSource inValue)
Definition: ntv2utils.cpp:5334
PackTo10BitYCbCrBuffer
void PackTo10BitYCbCrBuffer(const uint16_t *ycbcrBuffer, uint32_t *packedBuffer, const uint32_t numPixels)
Definition: ntv2utils.cpp:184
NTV2HDMIAudioChannelsToString
std::string NTV2HDMIAudioChannelsToString(const NTV2HDMIAudioChannels inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6704
NTV2InputSourceToChannelSpec
NTV2Crosspoint NTV2InputSourceToChannelSpec(const NTV2InputSource inInputSource)
Converts a given NTV2InputSource to its equivalent NTV2Crosspoint value.
Definition: ntv2utils.cpp:5059
GetNormalizedFrameGeometry
NTV2FrameGeometry GetNormalizedFrameGeometry(const NTV2FrameGeometry inFrameGeometry)
Definition: ntv2utils.cpp:3755
GetNTV2CrosspointChannelForIndex
NTV2Crosspoint GetNTV2CrosspointChannelForIndex(const ULWord inIndex0)
Definition: ntv2utils.cpp:4796
operator<<
std::ostream & operator<<(std::ostream &inOutStream, const NTV2FrameDimensions inFrameDimensions)
Writes the given NTV2FrameDimensions to the specified output stream.
NTV2_IOKINDS_SDI
@ NTV2_IOKINDS_SDI
Specifies SDI input/output kinds.
Definition: ntv2enums.h:1274
CopyRaster
bool CopyRaster(const NTV2PixelFormat inPixelFormat, UByte *pDstBuffer, const ULWord inDstBytesPerLine, const UWord inDstTotalLines, const UWord inDstVertLineOffset, const UWord inDstHorzPixelOffset, const UByte *pSrcBuffer, const ULWord inSrcBytesPerLine, const UWord inSrcTotalLines, const UWord inSrcVertLineOffset, const UWord inSrcVertLinesToCopy, const UWord inSrcHorzPixelOffset, const UWord inSrcHorzPixelsToCopy)
Copies all or part of a source raster image into a destination raster at a given position.
Definition: ntv2utils.cpp:1642
GetNTV2StandardFromScanGeometry
NTV2Standard GetNTV2StandardFromScanGeometry(const UByte inScanGeometry, const bool inIsProgressiveTransport)
Definition: ntv2utils.cpp:1807
CopyToQuadrant
void CopyToQuadrant(uint8_t *srcBuffer, uint32_t srcHeight, uint32_t srcRowBytes, uint32_t dstQuadrant, uint8_t *dstBuffer, uint32_t quad13Offset=0)
Definition: ntv2utils.cpp:482
YCbCr10BitPixel
Definition: ntv2videodefines.h:200
SetRasterLinesWhite
bool SetRasterLinesWhite(const NTV2PixelFormat inPixelFormat, UByte *pDstBuffer, const ULWord inDstBytesPerLine, const UWord inDstTotalLines)
Sets all or part of a destination raster image to legal white.
Definition: ntv2utils.cpp:1141
NTV2InputSourceToString
std::string NTV2InputSourceToString(const NTV2InputSource inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:7258
NTV2DownConvertMode
NTV2DownConvertMode
Definition: ntv2enums.h:2217
UnPack10BitDPXtoForRP215
void UnPack10BitDPXtoForRP215(UWord *rawrp215Buffer, ULWord *DPXLinebuffer, ULWord numPixels)
Definition: ntv2utils.cpp:679
AutoCircVidProcModeToString
std::string AutoCircVidProcModeToString(const AutoCircVidProcMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:7756
NTV2TCIndexToString
std::string NTV2TCIndexToString(const NTV2TCIndex inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6441
GetTransportCompatibleFormat
NTV2VideoFormat GetTransportCompatibleFormat(const NTV2VideoFormat inFormat, const NTV2VideoFormat inTargetFormat)
Definition: ntv2utils.cpp:5254
NTV2DeviceKinds
enum _NTV2DeviceKinds NTV2DeviceKinds
These enum values are used for device selection/filtering.
NTV2Standard
NTV2Standard
Identifies a particular video standard.
Definition: ntv2enums.h:156
NTV2ChannelToEmbeddedAudioInput
NTV2EmbeddedAudioInput NTV2ChannelToEmbeddedAudioInput(const NTV2Channel inChannel)
Converts the given NTV2Channel value into its equivalent NTV2EmbeddedAudioInput.
Definition: ntv2utils.cpp:4921
NTV2_VANCMODE_OFF
@ NTV2_VANCMODE_OFF
This identifies the mode in which there are no VANC lines in the frame buffer.
Definition: ntv2enums.h:3752
Make10BitWhiteLine
void Make10BitWhiteLine(UWord *pOutLineData, const ULWord inNumPixels=1920)
Writes a line of unpacked, legal SMPTE 10-bit Y/C white values into the given buffer.
Definition: ntv2utils.cpp:779
NTV2AudioChannelPairToString
std::string NTV2AudioChannelPairToString(const NTV2AudioChannelPair inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6478
ULWord
uint32_t ULWord
Definition: ajatypes.h:255
GetIndexForNTV2Crosspoint
ULWord GetIndexForNTV2Crosspoint(const NTV2Crosspoint inChannel)
Definition: ntv2utils.cpp:4884
CopyFromQuadrant
void CopyFromQuadrant(uint8_t *srcBuffer, uint32_t srcHeight, uint32_t srcRowBytes, uint32_t srcQuadrant, uint8_t *dstBuffer, uint32_t quad13Offset=0)
Definition: ntv2utils.cpp:454
GetNTV2FrameGeometryWidth
ULWord GetNTV2FrameGeometryWidth(const NTV2FrameGeometry inFrameGeometry)
Definition: ntv2utils.cpp:4090
NTV2M31VideoPresetToString
std::string NTV2M31VideoPresetToString(const M31VideoPreset inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:7025
NTV2ReferenceSource
NTV2ReferenceSource
These enum values identify a specific source for the device's (output) reference clock.
Definition: ntv2enums.h:1429
GetNTV2CrosspointForIndex
NTV2Crosspoint GetNTV2CrosspointForIndex(const ULWord inIndex0)
Definition: ntv2utils.cpp:4860
NTV2IsCompatibleBitfileName
bool NTV2IsCompatibleBitfileName(const std::string &inBitfileName, const NTV2DeviceID inDeviceID)
NTV2SmpteLineNumber::IsValid
bool IsValid(void) const
Definition: ntv2utils.h:895
UWordSequence
std::vector< uint16_t > UWordSequence
An ordered sequence of UWord (uint16_t) values.
Definition: ntv2publicinterface.h:42
NTV2ACFrameRange
AutoCirculate Frame Range.
Definition: ntv2utils.h:969
NTV2GeometrySet
std::set< NTV2FrameGeometry > NTV2GeometrySet
A set of distinct NTV2FrameGeometry values.
Definition: ntv2publicinterface.h:8810
NTV2InputCrosspointIDsIter
NTV2InputCrosspointIDs::iterator NTV2InputCrosspointIDsIter
A convenient non-const iterator for NTV2InputCrosspointIDs.
Definition: ntv2utils.h:1070
NTV2Mode
NTV2Mode
Used to identify the mode of a widget_framestore, or the direction of an AutoCirculate stream: either...
Definition: ntv2enums.h:1221
NTV2HDMIProtocol
NTV2HDMIProtocol
Indicates or specifies the HDMI protocol.
Definition: ntv2enums.h:3574
NTV2_IS_VALID_STANDARD
#define NTV2_IS_VALID_STANDARD(__s__)
Definition: ntv2enums.h:179
MaskYCbCrLine
void MaskYCbCrLine(UWord *ycbcrLine, UWord signalMask, ULWord numPixels)
Definition: ntv2utils.cpp:691
NTV2DeviceIDListIter
NTV2DeviceIDList::iterator NTV2DeviceIDListIter
A convenient non-const iterator for NTV2DeviceIDList.
Definition: ntv2utils.h:1033
NTV2ChannelToTimecodeIndex
NTV2TCIndex NTV2ChannelToTimecodeIndex(const NTV2Channel inChannel, const bool inEmbeddedLTC=false, const bool inIsF2=false)
Converts the given NTV2Channel value into the equivalent NTV2TCIndex value.
Definition: ntv2utils.cpp:5022
NTV2DeviceIDToString
std::string NTV2DeviceIDToString(const NTV2DeviceID inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:4673
NTV2MixerInputControlToString
std::string NTV2MixerInputControlToString(const NTV2MixerKeyerInputControl inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6579
GetFrameRateFamily
NTV2FrameRate GetFrameRateFamily(const NTV2FrameRate inFrameRate)
Definition: ntv2utils.cpp:5403
NTV2TCIndex
NTV2TCIndex
These enum values are indexes into the capture/playout AutoCirculate timecode arrays.
Definition: ntv2enums.h:3904
UnpackLine_10BitYUVtoU16s
bool UnpackLine_10BitYUVtoU16s(std::vector< uint16_t > &outYCbCrLine, const NTV2Buffer &inFrameBuffer, const NTV2FormatDescriptor &inDescriptor, const UWord inLineOffset)
Unpacks up to one raster line of an NTV2_FBF_10BIT_YCBCR frame buffer into an array of uint16_t value...
NTV2IsoConvertModeToString
std::string NTV2IsoConvertModeToString(const NTV2IsoConvertMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6677
IsTransportCompatibleFormat
bool IsTransportCompatibleFormat(const NTV2VideoFormat inFormat1, const NTV2VideoFormat inFormat2)
Definition: ntv2utils.cpp:5266
StringToSerialNum64
bool StringToSerialNum64(const std::string &inSerNumStr, uint64_t &outSerNum)
NTV2StandardToString
std::string NTV2StandardToString(const NTV2Standard inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:6957
NTV2InputCrosspointIDToString
std::string NTV2InputCrosspointIDToString(const NTV2InputCrosspointID inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:5874
NTV2AudioChannelPair
NTV2AudioChannelPair
Identifies a pair of audio channels.
Definition: ntv2enums.h:3087
GetNTV2InputSourceKind
NTV2IOKinds GetNTV2InputSourceKind(const NTV2InputSource inSrc)
Definition: ntv2utils.cpp:5316
UWord
uint16_t UWord
Definition: ajatypes.h:253
NTV2ScanMethodToString
std::string NTV2ScanMethodToString(const NTV2ScanMethod inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6665
ntv2enums.h
Enumerations for controlling NTV2 devices.
NTV2RegisterReads
NTV2RegWrites NTV2RegisterReads
Definition: ntv2publicinterface.h:4014
NTV2VANCModeToString
std::string NTV2VANCModeToString(const NTV2VANCMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6552
Is8KFormat
bool Is8KFormat(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5500
NTV2_FBF_8BIT_YCBCR
@ NTV2_FBF_8BIT_YCBCR
See 8-Bit YCbCr Format.
Definition: ntv2enums.h:214
GetNTV2InputSourceForIndex
NTV2InputSource GetNTV2InputSourceForIndex(const ULWord inIndex0, const NTV2IOKinds inKinds=NTV2_IOKINDS_SDI)
Definition: ntv2utils.cpp:5284
Make10BitBlackLine
void Make10BitBlackLine(UWord *pOutLineData, const ULWord inNumPixels=1920)
Writes a line of unpacked, legal SMPTE 10-bit Y/C black values into the given buffer.
Definition: ntv2utils.cpp:766
NTV2UpConvertMode
NTV2UpConvertMode
Definition: ntv2enums.h:2194
NTV2Framesize
NTV2Framesize
Kona2/Xena2 specific enums.
Definition: ntv2enums.h:2091
NTV2TaskModeToString
std::string NTV2TaskModeToString(const NTV2EveryFrameTaskMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6400
UnpackLine_10BitYUVto16BitYUV
void UnpackLine_10BitYUVto16BitYUV(const ULWord *pIn10BitYUVLine, UWord *pOut16BitYUVLine, const ULWord inNumPixels)
Unpacks a line of 10-bit-per-component YCbCr video into 16-bit-per-component YCbCr (NTV2_FBF_10BIT_YC...
Definition: ntv2utils.cpp:511
NTV2VideoFormatToString
std::string NTV2VideoFormatToString(const NTV2VideoFormat inValue, const bool inUseFrameRate=false)
Definition: ntv2utils.cpp:6793
Get4xSizedGeometry
NTV2FrameGeometry Get4xSizedGeometry(const NTV2FrameGeometry inGeometry)
Definition: ntv2utils.cpp:2230
NTV2BreakoutType
NTV2BreakoutType
Identifies the Breakout Boxes and Cables that may be attached to an AJA NTV2 device.
Definition: ntv2enums.h:3059
NTV2IsoConvertMode
NTV2IsoConvertMode
Definition: ntv2enums.h:2228
NTV2InputCrosspointID
NTV2InputCrosspointID
Identifies a widget input that potentially can accept a signal emitted from another widget's output (...
Definition: ntv2enums.h:2721
NTV2HDMIRangeToString
std::string NTV2HDMIRangeToString(const NTV2HDMIRange inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6726
NTV2_DEVICEKIND_ALL
@ NTV2_DEVICEKIND_ALL
Specifies any/all devices.
Definition: ntv2enums.h:1357
StackQuadrants
void StackQuadrants(uint8_t *pSrc, uint32_t srcWidth, uint32_t srcHeight, uint32_t srcRowBytes, uint8_t *pDst)
Definition: ntv2utils.cpp:413
NTV2ChannelToInputCrosspoint
NTV2Crosspoint NTV2ChannelToInputCrosspoint(const NTV2Channel inChannel)
Definition: ntv2utils.cpp:4975
IsVideoFormatA
bool IsVideoFormatA(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5518
NTV2ChannelToOutputCrosspoint
NTV2Crosspoint NTV2ChannelToOutputCrosspoint(const NTV2Channel inChannel)
Definition: ntv2utils.cpp:4986
Make8BitWhiteLine
void Make8BitWhiteLine(UByte *lineData, ULWord numPixels=1920, NTV2FrameBufferFormat=NTV2_FBF_8BIT_YCBCR)
Definition: ntv2utils.cpp:850
ToRegNumSet
NTV2RegNumSet ToRegNumSet(const NTV2RegisterReads &inRegReads)
Definition: ntv2utils.cpp:8016
GetVideoActiveSize
ULWord GetVideoActiveSize(const NTV2VideoFormat inVideoFormat, const NTV2FrameBufferFormat inFBFormat, const NTV2VANCMode inVancMode=NTV2_VANCMODE_OFF)
Definition: ntv2utils.cpp:2758
NTV2WidgetID
NTV2WidgetID
Definition: ntv2enums.h:2878
NTV2AudioLoopBack
NTV2AudioLoopBack
This enum value determines/states if an audio output embedder will embed silence (zeroes) or de-embed...
Definition: ntv2enums.h:2003
NTV2BitfileType
NTV2BitfileType
Definition: ntv2enums.h:3324
IsNTV2CrosspointOutput
bool IsNTV2CrosspointOutput(const NTV2Crosspoint inChannel)
Definition: ntv2utils.cpp:4915
NTV2AudioChannelOctetToString
std::string NTV2AudioChannelOctetToString(const NTV2Audio8ChannelSelect inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6502
GetQuarterSizedVideoFormat
NTV2VideoFormat GetQuarterSizedVideoFormat(const NTV2VideoFormat inVideoFormat)
Definition: ntv2utils.cpp:1844
M31VideoPreset
M31VideoPreset
Definition: ntv2m31enums.h:12
RP188_STRUCT
Definition: ntv2publicinterface.h:4083
NTV2HDMIProtocolToString
std::string NTV2HDMIProtocolToString(const NTV2HDMIProtocol inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6715
NTV2GetVersionString
std::string NTV2GetVersionString(const bool inDetailed=false)
Definition: ntv2utils.cpp:7724
GetVideoWriteSize
ULWord GetVideoWriteSize(const NTV2VideoFormat inVideoFormat, const NTV2FrameBufferFormat inFBFormat, const NTV2VANCMode inVancMode=NTV2_VANCMODE_OFF)
Identical to the GetVideoActiveSize function, except rounds the result up to the nearest 4K page size...
Definition: ntv2utils.cpp:2775
Fill4k8BitYCbCrVideoFrame
void Fill4k8BitYCbCrVideoFrame(PULWord _baseVideoAddress, NTV2FrameBufferFormat frameBufferFormat, YCbCrPixel color, bool vancEnabled=false, bool b4k=false, bool wideVANC=false)
Definition: ntv2utils.cpp:917
PercentDecode
std::string PercentDecode(const std::string &inStr)
NTV2StringList
std::vector< std::string > NTV2StringList
Definition: ntv2utils.h:1143
MaskUnPacked10BitYCbCrBuffer
void MaskUnPacked10BitYCbCrBuffer(uint16_t *ycbcrUnPackedBuffer, uint16_t signalMask, uint32_t numPixels)
Definition: ntv2utils.cpp:330
NTV2VANCMode
NTV2VANCMode
These enum values identify the available VANC modes.
Definition: ntv2enums.h:3750
NTV2AudioSourceToString
std::string NTV2AudioSourceToString(const NTV2AudioSource inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6778
UnPack10BitDPXtoRGBAlpha10BitPixel
void UnPack10BitDPXtoRGBAlpha10BitPixel(RGBAlpha10BitPixel *rgba10BitBuffer, const ULWord *DPXLinebuffer, ULWord numPixels, bool bigEndian)
Definition: ntv2utils.cpp:648
Make8BitLine
void Make8BitLine(UByte *lineData, UByte Y, UByte Cb, UByte Cr, ULWord numPixels=1920, NTV2FrameBufferFormat=NTV2_FBF_8BIT_YCBCR)
Definition: ntv2utils.cpp:874
GetSmpteLineNumber
NTV2SmpteLineNumber GetSmpteLineNumber(const NTV2Standard inStandard)
For the given video standard, returns the SMPTE-designated line numbers for Field 1 and Field 2 that ...
Definition: ntv2utils.h:963
NTV2ACFrameRange::NTV2ACFrameRange
NTV2ACFrameRange(const UWord inFirstFrame, const UWord inLastFrame)
Definition: ntv2utils.h:976
AddAudioTone
bool AddAudioTone(ULWord &outNumBytesWritten, NTV2Buffer &inAudioBuffer, ULWord &inOutCurrentSample, const ULWord inNumSamples, const double inSampleRate, const double inAmplitude, const double inFrequency, const ULWord inNumBits, const bool inByteSwap, const ULWord inNumChannels)
Fills the given buffer with 32-bit (ULWord) audio tone samples.
Definition: ntv2utils.cpp:4478
GetRelatedGeometries
NTV2GeometrySet GetRelatedGeometries(const NTV2FrameGeometry inFrameGeometry)
Definition: ntv2utils.cpp:3901
NTV2MixerKeyerModeToString
std::string NTV2MixerKeyerModeToString(const NTV2MixerKeyerMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6565
IsVideoFormatJ2KSupported
bool IsVideoFormatJ2KSupported(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5529
GetGeometryFromFrameDimensions
NTV2FrameGeometry GetGeometryFromFrameDimensions(const NTV2FrameDimensions &inFD)
Definition: ntv2utils.cpp:3856
NTV2CrosspointToString
std::string NTV2CrosspointToString(const NTV2Crosspoint inChannel)
Definition: ntv2utils.cpp:5865
RecordCopyAudio
int RecordCopyAudio(PULWord pAja, PULWord pSR, int iStartSample, int iNumBytes, int iChan0, int iNumChans, bool bKeepAudio24Bits)
Definition: ntv2utils.cpp:4403
NTV2OutputCrosspointID
NTV2OutputCrosspointID
Identifies a widget output, a signal source, that potentially can drive another widget's input (ident...
Definition: ntv2enums.h:2502
NTV2InputSource
NTV2InputSource
Identifies a specific video input source.
Definition: ntv2enums.h:1244
GetNTV2FrameGeometryHeight
ULWord GetNTV2FrameGeometryHeight(const NTV2FrameGeometry inFrameGeometry)
Definition: ntv2utils.cpp:4084
ntv2formatdescriptor.h
Declares the NTV2FormatDescriptor class.
IsNTV2CrosspointInput
bool IsNTV2CrosspointInput(const NTV2Crosspoint inChannel)
Definition: ntv2utils.cpp:4909
GetInputForConversionMode
NTV2VideoFormat GetInputForConversionMode(const NTV2ConversionMode conversionMode)
Definition: ntv2utils.cpp:5683
NTV2OutputCrosspointIDsConstIter
NTV2OutputCrosspointIDs::const_iterator NTV2OutputCrosspointIDsConstIter
A convenient const iterator for NTV2OutputCrosspointIDs.
Definition: ntv2utils.h:1064
Make10BitLine
void Make10BitLine(UWord *lineData, const UWord Y, const UWord Cb, const UWord Cr, const ULWord numPixels=1920)
Definition: ntv2utils.cpp:792
NTV2AudioRate
NTV2AudioRate
Definition: ntv2enums.h:1903
NTV2InputCrosspointIDs
std::vector< NTV2InputCrosspointID > NTV2InputCrosspointIDs
An ordered sequence of NTV2InputCrosspointID values.
Definition: ntv2utils.h:1069
GetFrameRateFromScale
NTV2FrameRate GetFrameRateFromScale(long scale, long duration, NTV2FrameRate playFrameRate)
Definition: ntv2utils.cpp:3391
NTV2SmpteLineNumber
Used to describe Start of Active Video (SAV) location and field dominance for a given NTV2Standard....
Definition: ntv2utils.h:877
NTV2RegisterNumber
NTV2RegisterNumber
Definition: ntv2publicinterface.h:100
NTV2_SHOULD_BE_DEPRECATED
#define NTV2_SHOULD_BE_DEPRECATED(__f__)
Definition: ajatypes.h:523
LWord64
int64_t LWord64
Definition: ajatypes.h:257
NTV2VideoLimiting
NTV2VideoLimiting
These enum values identify the available SDI video output limiting modes.
Definition: ntv2enums.h:3731
Fill10BitYCbCrVideoFrame
bool Fill10BitYCbCrVideoFrame(void *pBaseVideoAddress, const NTV2Standard inStandard, const NTV2FrameBufferFormat inPixelFormat, const YCbCr10BitPixel inPixelColor, const NTV2VANCMode inVancMode=NTV2_VANCMODE_OFF)
Definition: ntv2utils.cpp:805
NTV2HDMIColorSpaceToString
std::string NTV2HDMIColorSpaceToString(const NTV2HDMIColorSpace inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6737
NTV2UpConvertModeToString
std::string NTV2UpConvertModeToString(const NTV2UpConvertMode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6638
UByte
uint8_t UByte
Definition: ajatypes.h:250
Make8BitBlackLine
void Make8BitBlackLine(UByte *lineData, ULWord numPixels=1920, NTV2FrameBufferFormat=NTV2_FBF_8BIT_YCBCR)
Definition: ntv2utils.cpp:828
NTV2ACFrameRange::lastFrame
UWord lastFrame(void) const
Definition: ntv2utils.h:984
NTV2OutputCrosspointIDs
std::vector< NTV2OutputCrosspointID > NTV2OutputCrosspointIDs
An ordered sequence of NTV2OutputCrosspointID values.
Definition: ntv2utils.h:1062
NTV2FrameBufferFormatToString
std::string NTV2FrameBufferFormatToString(const NTV2FrameBufferFormat inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:6983
NTV2WidgetTypeToString
std::string NTV2WidgetTypeToString(const NTV2WidgetType inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6349
NTV2RegisterWriteMode
NTV2RegisterWriteMode
These values are used to determine when certain register writes actually take effect....
Definition: ntv2enums.h:1654
UnpackLine_10BitYUVtoUWordSequence
bool UnpackLine_10BitYUVtoUWordSequence(const void *pIn10BitYUVLine, UWordSequence &out16BitYUVLine, ULWord inNumPixels)
Unpacks a line of NTV2_FBF_10BIT_YCBCR video into 16-bit-per-component YUV data.
Definition: ntv2utils.cpp:119
GetFirstMatchingVideoFormat
NTV2VideoFormat GetFirstMatchingVideoFormat(const NTV2FrameRate inFrameRate, const UWord inHeightLines, const UWord inWidthPixels, const bool inIsInterlaced, const bool inIsLevelB, const bool inIsPSF)
Definition: ntv2utils.cpp:1825
NTV2DeviceCanDoFormat
bool NTV2DeviceCanDoFormat(const NTV2DeviceID inDevID, const NTV2FrameRate inFR, const NTV2FrameGeometry inFG, const NTV2Standard inStd)
Definition: ntv2utils.cpp:4057
MakeUnPacked10BitYCbCrBuffer
void MakeUnPacked10BitYCbCrBuffer(uint16_t *buffer, uint16_t Y, uint16_t Cb, uint16_t Cr, uint32_t numPixels)
Definition: ntv2utils.cpp:197
IsRGBFormat
bool IsRGBFormat(const NTV2FrameBufferFormat format)
Definition: ntv2utils.cpp:5470
NTV2IpError
NTV2IpError
Definition: ntv2enums.h:4265
ntv2m31enums.h
Enumerations for controlling NTV2 devices with m31 HEVC encoders.
GetAudioSamplesPerFrame
ULWord GetAudioSamplesPerFrame(const NTV2FrameRate inFrameRate, const NTV2AudioRate inAudioRate, ULWord inCadenceFrame=0, bool inIsSMPTE372Enabled=false)
Returns the number of audio samples for a given video frame rate, audio sample rate,...
Definition: ntv2utils.cpp:2789
AJAExport
#define AJAExport
Definition: export.h:33
NTV2RegisterWriteModeToString
std::string NTV2RegisterWriteModeToString(const NTV2RegisterWriteMode inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:7330
NTV2VideoFormat
enum _NTV2VideoFormat NTV2VideoFormat
Identifies a particular video format.
FromRegNumSet
NTV2RegisterReads FromRegNumSet(const NTV2RegNumSet &inRegNumSet)
Definition: ntv2utils.cpp:8008
IsYCbCrFormat
bool IsYCbCrFormat(const NTV2FrameBufferFormat format)
Definition: ntv2utils.cpp:5476
ConvertLineTo8BitYCbCr
void ConvertLineTo8BitYCbCr(const uint16_t *ycbcr10BitBuffer, uint8_t *ycbcr8BitBuffer, const uint32_t numPixels)
Definition: ntv2utils.cpp:212
GetGeometryFromStandard
NTV2FrameGeometry GetGeometryFromStandard(const NTV2Standard inStandard)
Definition: ntv2utils.cpp:3967
NTV2ACFrameRange::setExactRange
bool setExactRange(const UWord inFirstFrame, const UWord inLastFrame)
Definition: ntv2utils.h:997
NTV2FrameGeometry
NTV2FrameGeometry
Identifies a particular video frame geometry.
Definition: ntv2enums.h:339
NTV2ConversionMode
NTV2ConversionMode
Definition: ntv2enums.h:3667
RePackLineDataForYCbCrDPX
void RePackLineDataForYCbCrDPX(ULWord *packedycbcrLine, ULWord numULWords)
Definition: ntv2utils.cpp:637
GetIndexForNTV2CrosspointInput
ULWord GetIndexForNTV2CrosspointInput(const NTV2Crosspoint inChannel)
Definition: ntv2utils.cpp:4844
NTV2AudioLoopBackToString
std::string NTV2AudioLoopBackToString(const NTV2AudioLoopBack inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:5841
NTV2EveryFrameTaskMode
NTV2EveryFrameTaskMode
Describes the task mode state. See also: Sharing AJA Devices With Other Applications.
Definition: ntv2publicinterface.h:4288
GetQuadSizedVideoFormat
NTV2VideoFormat GetQuadSizedVideoFormat(const NTV2VideoFormat inVideoFormat, const bool isSquareDivision=true)
Definition: ntv2utils.cpp:2032
NTV2DeviceIDSet
std::set< NTV2DeviceID > NTV2DeviceIDSet
A set of NTV2DeviceIDs.
Definition: ntv2utils.h:1039
GetConversionMode
NTV2ConversionMode GetConversionMode(const NTV2VideoFormat inFormat, const NTV2VideoFormat outFormat)
Definition: ntv2utils.cpp:5535
Fill8BitYCbCrVideoFrame
bool Fill8BitYCbCrVideoFrame(void *pBaseVideoAddress, const NTV2Standard inStandard, const NTV2FrameBufferFormat inFBF, const YCbCrPixel inPixelColor, const NTV2VANCMode inVancMode=NTV2_VANCMODE_OFF)
Definition: ntv2utils.cpp:900
GetDisplayWidth
ULWord GetDisplayWidth(const NTV2VideoFormat videoFormat)
Definition: ntv2utils.cpp:4098
NTV2VideoLimitingToString
std::string NTV2VideoLimitingToString(const NTV2VideoLimiting inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6592
NTV2CrosspointToNTV2Channel
NTV2Channel NTV2CrosspointToNTV2Channel(const NTV2Crosspoint inCrosspointChannel)
Definition: ntv2utils.cpp:4768
Get4xSizedStandard
NTV2Standard Get4xSizedStandard(const NTV2Standard inGeometry, const bool bIs4k=false)
Definition: ntv2utils.cpp:2259
NTV2Audio4ChannelSelect
NTV2Audio4ChannelSelect
Identifies a contiguous, adjacent group of four audio channels.
Definition: ntv2enums.h:3227
NTV2StringListConstIter
NTV2StringList::const_iterator NTV2StringListConstIter
Definition: ntv2utils.h:1145
NTV2FramesizeToString
std::string NTV2FramesizeToString(const NTV2Framesize inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6514
GetStandardFromGeometry
NTV2Standard GetStandardFromGeometry(const NTV2FrameGeometry inGeometry, const bool inIsProgressive=true)
Definition: ntv2utils.cpp:4003
GetAudioSamplesPerSecond
double GetAudioSamplesPerSecond(const NTV2AudioRate inAudioRate)
Returns the audio sample rate as a number of audio samples per second.
Definition: ntv2utils.cpp:3203
PackLine_16BitYUVto10BitYUV
void PackLine_16BitYUVto10BitYUV(const UWord *pIn16BitYUVLine, ULWord *pOut10BitYUVLine, const ULWord inNumPixels)
Packs a line of 16-bit-per-component YCbCr (NTV2_FBF_10BIT_YCBCR) video into 10-bit-per-component YCb...
Definition: ntv2utils.cpp:527
NTV2ACFrameRange::valid
bool valid(void) const
Definition: ntv2utils.h:985
GetOutputForConversionMode
NTV2VideoFormat GetOutputForConversionMode(const NTV2ConversionMode conversionMode)
Definition: ntv2utils.cpp:5727
NTV2TimecodeIndexToInputSource
NTV2InputSource NTV2TimecodeIndexToInputSource(const NTV2TCIndex inTCIndex)
Converts the given NTV2TCIndex value into the appropriate NTV2InputSource value.
Definition: ntv2utils.cpp:5048
NTV2ACFrameRange::setRangeWithCount
bool setRangeWithCount(const UWord inCount, const UWord inFirstFrame)
Definition: ntv2utils.h:1005
NTV2ACFrameRange::isCountOnly
bool isCountOnly(void) const
Definition: ntv2utils.h:980
NTV2ChannelToString
std::string NTV2ChannelToString(const NTV2Channel inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:5787
NTV2AncDataRgn
enum NTV2AncillaryDataRegion NTV2AncDataRgn
IsRaw
bool IsRaw(const NTV2FrameBufferFormat format)
Definition: ntv2utils.cpp:5506
GetNTV2StandardFromVideoFormat
NTV2Standard GetNTV2StandardFromVideoFormat(const NTV2VideoFormat inVideoFormat)
Definition: ntv2utils.cpp:2277
NTV2AudioRateToString
std::string NTV2AudioRateToString(const NTV2AudioRate inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:5816
NTV2EmbeddedAudioInputToString
std::string NTV2EmbeddedAudioInputToString(const NTV2EmbeddedAudioInput inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6760
Is4KFormat
bool Is4KFormat(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5494
ntv2publicinterface.h
Declares enums and structs used by all platform drivers and the SDK.
IsPSF
bool IsPSF(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5445
NTV2BitfileTypeToString
std::string NTV2BitfileTypeToString(const NTV2BitfileType inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:7783
IsMultiFormatCompatible
bool IsMultiFormatCompatible(const NTV2FrameRate inFrameRate1, const NTV2FrameRate inFrameRate2)
Compares two frame rates and returns true if they are "compatible" (with respect to a multiformat-cap...
Definition: ntv2utils.cpp:5417
NTV2DeviceIDList
std::vector< NTV2DeviceID > NTV2DeviceIDList
An ordered list of NTV2DeviceIDs.
Definition: ntv2utils.h:1032
RGBAlpha10BitPixel
Definition: ntv2videodefines.h:145
NTV2OutputCrosspointIDToString
std::string NTV2OutputCrosspointIDToString(const NTV2OutputCrosspointID inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:6017
NTV2InputSourceToAudioSource
NTV2AudioSource NTV2InputSourceToAudioSource(const NTV2InputSource inInputSource)
Definition: ntv2utils.cpp:4961
NTV2ReferenceSourceToString
std::string NTV2ReferenceSourceToString(const NTV2ReferenceSource inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:7301
SetRasterLinesBlack
bool SetRasterLinesBlack(const NTV2PixelFormat inPixelFormat, UByte *pDstBuffer, const ULWord inDstBytesPerLine, const UWord inDstTotalLines)
Sets all or part of a destination raster image to legal black.
Definition: ntv2utils.cpp:1081
NTV2EmbeddedAudioInput
NTV2EmbeddedAudioInput
This enum value determines/states which SDI video input will be used to supply audio samples to an au...
Definition: ntv2enums.h:1942
NTV2ChannelToOutputInterrupt
INTERRUPT_ENUMS NTV2ChannelToOutputInterrupt(const NTV2Channel inChannel)
Converts the given NTV2Channel value into the equivalent output INTERRUPT_ENUMS value.
Definition: ntv2utils.cpp:5007
NTV2AudioSystem
NTV2AudioSystem
Used to identify an Audio System on an NTV2 device. See Audio System Operation for more information.
Definition: ntv2enums.h:3848
GetInstalledMacDriverVersion
bool GetInstalledMacDriverVersion(UWord &outMaj, UWord &outMin, UWord &outPt, UWord &outBld, UWord &outType)
Definition: ntv2utils.cpp:8201
NTV2IpErrorEnumToString
std::string NTV2IpErrorEnumToString(const NTV2IpError inIpErrorEnumValue)
Definition: ntv2utils.cpp:7393
NTV2SmpteLineNumber
struct NTV2SmpteLineNumber NTV2SmpteLineNumber
Used to describe Start of Active Video (SAV) location and field dominance for a given NTV2Standard....
HDRRegValues
Definition: ntv2publicinterface.h:9865
NTV2ScanMethod
enum _NTV2ScanMethod NTV2ScanMethod
Identifies a particular scan method.
GetIndexForNTV2CrosspointChannel
ULWord GetIndexForNTV2CrosspointChannel(const NTV2Crosspoint inChannel)
Definition: ntv2utils.cpp:4812
NTV2SmpteLineNumber::firstFieldTop
bool firstFieldTop
True if the first field on the wire is the top-most field in the raster (field dominance)
Definition: ntv2utils.h:881
NTV2MixerKeyerMode
NTV2MixerKeyerMode
These enum values identify the mixer mode.
Definition: ntv2enums.h:1766
NTV2Audio8ChannelSelect
NTV2Audio8ChannelSelect
Identifies a contiguous, adjacent group of eight audio channels.
Definition: ntv2enums.h:3276
NTV2ModeToString
std::string NTV2ModeToString(const NTV2Mode inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6540
NTV2AudioSource
NTV2AudioSource
This enum value determines/states where an audio system will obtain its audio samples.
Definition: ntv2enums.h:1980
NTV2FrameRateToString
std::string NTV2FrameRateToString(const NTV2FrameRate inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:7227
AddAudioTestPattern
ULWord AddAudioTestPattern(ULWord *pAudioBuffer, ULWord &inOutCurrentSample, const ULWord inNumSamples, const ULWord inModulus, const bool inEndianConvert, const ULWord inNumChannels)
Definition: ntv2utils.cpp:4652
NTV2ChannelToAudioSystem
NTV2AudioSystem NTV2ChannelToAudioSystem(const NTV2Channel inChannel)
Converts the given NTV2Channel value into its equivalent NTV2AudioSystem.
Definition: ntv2utils.cpp:4929
NTV2WidgetIDToString
std::string NTV2WidgetIDToString(const NTV2WidgetID inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6222
NTV2Crosspoint
NTV2Crosspoint
Logically, these are an NTV2Channel combined with an NTV2Mode.
Definition: ntv2enums.h:1675
NTV2IOKinds
ULWord NTV2IOKinds
Definition: ntv2enums.h:1287
NTV2ACFrameRange::setCountOnly
bool setCountOnly(const UWord inCount)
Definition: ntv2utils.h:1013
NTV2SmpteLineNumber::smpteSecondActiveLine
ULWord smpteSecondActiveLine
SMPTE line number of second active line of video.
Definition: ntv2utils.h:880
NTV2AudioBufferSize
NTV2AudioBufferSize
Represents the size of the audio buffer used by a device audio system for storing captured samples or...
Definition: ntv2enums.h:1889
SerialNum64ToString
std::string SerialNum64ToString(const uint64_t &inSerNum)
Definition: ntv2utils.cpp:8158
GetVaricamRepeatCount
ULWord GetVaricamRepeatCount(const NTV2FrameRate inSequenceRate, const NTV2FrameRate inPlayRate, const ULWord inCadenceFrame=0)
Definition: ntv2utils.cpp:3215
NTV2AudioSystemToString
std::string NTV2AudioSystemToString(const NTV2AudioSystem inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:5805
Is2KFormat
bool Is2KFormat(const NTV2VideoFormat format)
Definition: ntv2utils.cpp:5488
NTV2OutputDestinationToString
std::string NTV2OutputDestinationToString(const NTV2OutputDestination inValue, const bool inForRetailDisplay=false)
Definition: ntv2utils.cpp:7281
NTV2HDMIBitDepthToString
std::string NTV2HDMIBitDepthToString(const NTV2HDMIBitDepth inValue, const bool inCompactDisplay=false)
Definition: ntv2utils.cpp:6692