8 #ifndef NTV2_DEVICECAPABILITIES_H 9 #define NTV2_DEVICECAPABILITIES_H 24 inline operator bool()
const {
return dev.IsOpen();}
206 return itms.find(
ULWord(inChannel)) != itms.end();
215 return itms.find(
ULWord(inMode)) != itms.end();
224 return itms.find(
ULWord(inMode)) != itms.end();
233 return itms.find(
ULWord(inPF)) != itms.end();
243 return itms.find(
ULWord(inSrc)) != itms.end();
252 return itms.find(
ULWord(inDest)) != itms.end();
261 return itms.find(
ULWord(inVF)) != itms.end();
270 return itms.find(
ULWord(inWgtID)) != itms.end();
341 return itms.find(
ULWord(inTCNdx)) != itms.end();
350 return itms.find(
ULWord(inTCNdx)) != itms.end();
359 return itms.find(
ULWord(inRate)) != itms.end();
365 #endif // NTV2_DEVICECAPABILITIES_H bool CanDoDSKOpacity(void)
std::set< NTV2VideoFormat > NTV2VideoFormatSet
A set of distinct NTV2VideoFormat values.
ULWord GetMaxRegisterNumber(void)
The number of cross-converters on the device.
bool CanDoFramePulseSelect(void)
bool CanDoLTCInOnRefPort(void)
The number of input converter widgets on the device.
The number of TSI muxers on the device. (New in SDK 17.0)
bool CanDoAudio6Channels(void)
True if device can handle 2Kx1556 (film) video.
True if device supports 3D video output over dual-stream SDI.
bool CanDo12gRouting(void)
The version number of the device's genlock hardware/firmware. (New in SDK 17.6)
The number of SDI-embedded input audio channels supported by the device.
std::set< NTV2TCIndex > NTV2TCIndexes
True if device DMA hardware supports MSI (Message Signaled Interrupts).
True if device has version 3 genlock hardware and/or firmware. (Deprecate – use kDeviceGetGenlockVer...
True if device has SPI flash hardware.
True if audio system(s) support 2 or more audio channels.
The number of analog video outputs on the device.
bool CanChangeEmbeddedAudioClock(void)
True if device can do ISO conversion.
True if device has enhanced CSCs.
UWord GetNumEmbeddedAudioOutputChannels(void)
bool CanDoPCMDetection(void)
Declares the CNTV2DriverInterface base class.
The number of external reference video inputs on the device.
True if the device supports SMPTE 425 mux control.
UWord GetNum2022ChannelsSFP1(void)
bool CanDoPixelFormat(const NTV2PixelFormat inPF)
Same as DeviceCapabilities::CanDoFrameBufferFormat.
bool CanDoPCMControl(void)
The number of video channels supported on the device.
The number of mixer/keyer widgets on the device.
NTV2FrameBufferFormat
Identifies a particular video frame buffer pixel format. See Device Frame Buffer Formats for details...
True if device can squeeze/stretch between 1920x1080/1280x1080 and 1280x720/960x720.
UWord GetNumLUTBanks(void)
True if device can do 3G level B to 3G level A conversion.
True if device supports an AJA breakout box.
The number of analog LTC outputs on the device.
The number of AES/EBU audio output channels on the device.
NTV2OutputDestination
Identifies a specific video output destination.
True if HDMI in/out supports square-division (quad) raster conversion. (New in SDK 17...
bool CanChangeFrameBufferSize(void)
True if device can warm-boot to load updated firmware.
enum _NTV2VideoFormat NTV2VideoFormat
Identifies a particular video format.
True if device can display/output video from FrameStore 1.
The number of independent Audio Systems on the device.
Identifies the NTV2AudioRate enumerated type.
True if device has version 2 genlock hardware and/or firmware. (Deprecate – use kDeviceGetGenlockVer...
Identifies the NTV2OutputDest enumerated type.
Identifies the NTV2DSKMode enumerated type.
True if device can report if its "fail-safe" firmware is loaded/running.
True if device connects to the host with a cable.
bool CanDoSDIErrorChecks(void)
UWord GetNumHDMIVideoOutputs(void)
UWord GetDACVersion(void)
bool CanDoRateConvert(void)
True if device can detect which audio channel pairs are not carrying PCM (Pulse Code Modulation) audi...
bool CanDoProgrammableRS422(void)
bool CanDoAudioOutput(void)
True if device has an HEVC M31 encoder.
UWord GetNumInputConverters(void)
True if device has LED audio meters.
The version number of the LUT(s) on the device.
Identifies the NTV2VideoFormat enumerated type.
bool HasSPIFlashSerial(void)
True if device has SFP connectors.
Identifies the NTV2Channel enumerated type.
True if device widget routing can be queried or changed.
True if device can do video processing.
NTV2FrameBufferFormatSet NTV2PixelFormats
Identifies the NTV2InputSource enumerated type.
bool CanDoHDMIQuadRasterConversion(void)
bool CanDoFrameStore1Display(void)
True if the device can do RGB over 3G Level A.
ULWord GetNumDMAEngines(void)
The maximum number of 32-bit words that the DMA engine can move at a time on the device.
True if device can handle QRez.
UWord GetNumOutputConverters(void)
The number of DMA engines on the device.
bool NeedsRoutingSetup(void)
NTV2Channel
These enum values are mostly used to identify a specific widget_framestore. They're also commonly use...
True if Audio System(s) support an adjustable delay.
True if device supports an AJA breakout board. (New in SDK 17.0)
bool CanDoInputSource(const NTV2InputSource inSrc)
bool CanDoCustomAnc(void)
True if device supports grouped audio system control.
bool CanReportRunningFirmwareDate(void)
bool CanDoThunderbolt(void)
The number of SDI video outputs on the device.
bool IsExternalToHost(void)
ULWord GetMaxTransferCount(void)
UWord GetNumDownConverters(void)
True if device supports streaming DMA. (New in SDK 17.1)
ULWordSet::const_iterator ULWordSetConstIter
ULWord GetNumVideoChannels(void)
UWord GetNumFrameSyncs(void)
True if device has any audio output capability (SDI, HDMI or analog) (New in SDK 17.1)
The total number of audio systems on the device, including host audio and mixer audio systems...
UWord GetNumAudioSystems(void)
bool CanDoAudioWaitForVBI(void)
True if device is 64-bit addressable.
True if device can read LTC (Linear TimeCode) from its reference input.
NTV2TCIndex
These enum values are indexes into the capture/playout AutoCirculate timecode arrays.
True if device can mark specific audio channel pairs as not carrying PCM (Pulse Code Modulation) audi...
True if device SDI connectors are bi-directional.
UWord GetNumAnalogVideoInputs(void)
I'm the base class that undergirds the platform-specific derived classes (from which CNTV2Card is ult...
True if device has CSCs capable of splitting the key (alpha) and YCbCr (fill) from RGB frame buffers ...
The version number of the UFC on the device.
UWord GetNumTSIMuxers(void)
True if device supports 3D video input over dual-stream SDI.
True if device supports Programmed I/O.
bool HasAudioMonitorRCAJacks(void)
True if device SPIFlash ROM is bank-selected. (New in SDK 17.1)
bool CanDoQuarterExpand(void)
UWord GetNumHDMIAudioInputChannels(void)
The highest register number for the device.
Use kDeviceGetSPIVersion instead.
The highest bit number of the LED bits in the Global Control Register on the device.
bool CanDoOutputDestination(const NTV2OutputDestination inDest)
The number of FrameStores on the device.
True if device can handle quarter-sized frames (pixel-halving and line-halving during input...
bool CanDoHDMIAuxPlayback(void)
True if device has bypass relays on its SDI connectors.
bool HasPWMFanControl(void)
bool CanDoVideoProcessing(void)
bool HasBiDirectionalSDI(void)
True if device can squeeze/stretch between 1920x1080 and 1440x1080.
True if device supports JPEG 2000 codec.
True if device has attached breakout board. (New in SDK 17.0)
True if device has LED(s) on the card bracket. (New in SDK 18.0)
ULWord GetSPIFlashVersion(void)
True if device has any SDI, HDMI or analog video outputs.
The number of up-converters on the device.
True if device has any audio input capability (SDI, HDMI or analog) (New in SDK 17.1)
bool CanDoMultiLinkAudio(void)
UWord GetNumSerialPorts(void)
True if device has a headphone jack.
UWord GetNum4kQuarterSizeConverters(void)
True if device has 25Gbps SFPs. (New in SDK 18.0)
bool CanMeasureTemperature(void)
True if device has at least one RS-422 serial port, and it (they) can be programmed (for baud rate...
bool HasHeadphoneJack(void)
True if device has a pair of unbalanced RCA audio monitor output connectors.
True if device uses a "stacked" arrangement of its audio buffers.
bool CanDoStereoOut(void)
std::set< ULWord > ULWordSet
A collection of unique ULWord (uint32_t) values.
bool CanDoAudio8Channels(void)
bool CanDoStackedAudio(void)
bool CanDoHDMIAuxCapture(void)
bool CanDoAudioSampleRate(const NTV2AudioRate inRate)
bool CanDoOutputTCIndex(const NTV2TCIndex inTCNdx)
NTV2TCIndexes OutputTCIndexes(void)
True if device has 12G SDI connectors.
bool CanDoBreakoutBox(void)
True if device is supported by AJA "retail" software (AJA ControlPanel & ControlRoom).
The maximum number of audio channels that a single Audio System can support on the device...
bool CanDoAESAudioOut(void)
True if device can rasterize 4 HD signals into a single HDMI output.
UWord GetNum2022ChannelsSFP2(void)
True if device supports 2nd-generation PCIe.
True if audio system(s) support 6 or more audio channels.
True if device is local-host-attached, and not remote, software or virtual (new in SDK 17...
UWord GetNumLTCInputs(void)
bool CanDoWarmBootFPGA(void)
std::set< NTV2AudioRate > NTV2AudioRateSet
A set of distinct NTV2AudioRate values. New in SDK 18.0.
True if device has GPIO interface. (New in SDK 18.0)
True if frame buffer sizes are not fixed.
bool SoftwareCanChangeFrameBufferSize(void)
The number of quarter-size 4K/UHD down-converters on the device.
UWord GetNumCrossConverters(void)
Identifies the NTV2TCIndex enumerated type for output.
True if device is direct addressable.
True if device has any SDI, HDMI or analog video inputs.
True if device has serial SPI flash hardware.
UWord GetNumUpConverters(void)
True if device can report its frame size.
UWord GetNumFrameStores(void)
UWord GetNumAESAudioInputChannels(void)
The number of LUT banks on the device. (New in SDK 17.0)
True if device has any AES audio output channels (New in SDK 17.1)
bool CanDo3GLevelConversion(void)
bool CanDoHDMIOutStereo(void)
The number of HDMI video outputs on the device.
Use kDeviceGetSPIVersion instead.
The number of SDI-embedded output audio channels supported by the device.
The number of frame sync widgets on the device.
bool HasBreakoutBoard(void)
bool CanDoBreakoutBoard(void)
Use kDeviceGetSPIVersion instead.
True if device can handle SD (Standard Definition) video.
NTV2InputSource
Identifies a specific video input source.
True if device mixer/keyer supports adjustable opacity.
True if device has a crosspoint connection ROM (New in SDK 17.0)
True if device supports 10-bit RGB input/output over 2-wire SDI.
bool ROMHasBankSelect(void)
True if device frame buffer size can be changed.
bool HasRotaryEncoder(void)
The number of analog audio output channels on the device.
UWord GetTotalNumAudioSystems(void)
True if Audio System(s) support a 192kHz sample rate.
Use kDeviceGetSPIVersion instead.
True if device has one or more analog video outputs.
bool CanDoAESAudioIn(void)
bool HasRetailSupport(void)
bool CanDoCustomHancInsertion(void)
The number of analog LTC inputs on the device.
bool CanDoChannel(const NTV2Channel inChannel)
The number of analog video inputs on the device.
The total number of audio systems on the device that can read/write audio buffer memory. Includes host audio system, if present. (New in SDK 17.0)
True if device supports 1080p RGB at more than 50Hz frame rates.
UWord GetNumEmbeddedAudioInputChannels(void)
True if device supports 12G routing crosspoints.
The version number of the DAC on the device.
bool CanDoHDMIHDROut(void)
bool CanDoInputTCIndex(const NTV2TCIndex inTCNdx)
True if device supports SMPTE ST2110.
bool IsLocalPhysical(void)
True if device can perform SDI error checking.
ULWord GetActiveMemorySize(void)
The number of output converter widgets on the device.
True if device has any analog inputs or outputs.
True if the device can handle 4K/UHD video.
ULWord GetHDMIVersion(void)
The number of RS-422 serial ports on the device.
True if device has SDI ANC inserter/extractor firmware.
bool CanDoAnalogAudio(void)
NTV2AudioRateSet AudioSampleRates(void)
bool HasNTV4FrameStores(void)
bool CanDoEnhancedCSC(void)
bool HasBiDirectionalAnalogAudio(void)
UWord GetDownConverterDelay(void)
NTV2VideoFormatSet VideoFormats(void)
bool HasColorSpaceConverterOnChannel2(void)
True if device supports HDMI HDR output.
True if device can measure its FPGA die temperature.
True if there's at least one UFC, and it can be disabled.
bool CanDoDSKMode(const NTV2DSKMode inMode)
True if device can report its running (and not necessarily installed) firmware date.
bool CanDoRGBLevelAConversion(void)
UWord GetNumHDMIAudioOutputChannels(void)
Calculate based on if NTV2_WgtCSC2 is present.
bool CanDoFrameBufferFormat(const NTV2PixelFormat inPF)
True if device is supported by this SDK.
The number of microphone inputs on the device.
The number of HDMI audio input channels on the device.
True if device supports frame pulse source independent of reference source.
UWord GetNumAnalogVideoOutputs(void)
bool CanDoWidget(const NTV2WidgetID inWgtID)
DeviceCapabilities(CNTV2DriverInterface &inDev)
The number of 2022 channels configured on SFP 2 on the device.
True if device has any LUTs.
True if device has HDMI AUX data extractor(s).
bool CanDoHDMIMultiView(void)
bool HasLEDAudioMeters(void)
True if device can read LTC (Linear TimeCode) from one of its inputs.
bool CanDoStreamingDMA(void)
The SPI-flash version on the device. (New in SDK 17.1)
True if device supports 3D/stereo HDMI video output.
ULWord GetGenlockVersion(void)
bool CanReportFrameSize(void)
The down-converter delay on the device.
True if device has a PWM-controlled cooling fan. (New in SDK 17.1)
UWord GetNumLTCOutputs(void)
NTV2TCIndexes InputTCIndexes(void)
UWord GetNumMicInputs(void)
bool CanDoAudio2Channels(void)
Convenience class/API for inquiring about device capabilities of physical and virtual devices...
True if device has NorthWest Logic DMA hardware.
The version number of the HDMI chipset on the device.
True if device audio systems can wait for VBI before starting. (New in SDK 17.0)
bool CanDoAudio192K(void)
The number of LUT widgets on the device.
The number of analog audio input channels on the device.
True if audio system(s) support 8 or more audio channels.
True if device has a microphone input connector.
True if device can insert or extract RP-188/VITC2.
bool CanDoRGBPlusAlphaOut(void)
bool CanDoAudioDelay(void)
True if device has an HEVC M30 encoder/decoder.
ULWord GetUFCVersion(void)
bool CanDoAudioInput(void)
True if device has a firmware audio mixer.
Identifies the NTV2PixelFormat enumerated type.
UWord GetNumHDMIVideoInputs(void)
Identifies the NTV2TCIndex enumerated type for input.
UWord GetNumReferenceVideoInputs(void)
bool CanDoAudioMixer(void)
UWord GetMaxAudioChannels(void)
bool CanDoVideoFormat(const NTV2VideoFormat inVF)
Identifies the NTV2ConversionMode enumerated type.
True if device connects to the host using a Thunderbolt cable.
True if device has a bi-directional analog audio connector.
bool HasCrosspointConnectROM(void)
UWord GetNumVideoOutputs(void)
bool CanDoConversionMode(const NTV2ConversionMode inMode)
ULWord GetLUTVersion(void)
The number of 2022 channels configured on SFP 1 on the device.
UWord GetNumAnalogAudioOutputChannels(void)
True if device has a rotary encoder volume control.
UWord GetNumBufferedAudioSystems(void)
The number of colorspace converter widgets on the device.
Identifies the NTV2AudioWidgetID enumerated type.
bool CanDoAnalogVideoIn(void)
bool CanDoIsoConvert(void)
UWord GetNumAESAudioOutputChannels(void)
True if device supports custom HANC packet insertion. (New in SDK 17.1)
True if device can insert and/or extract RP-188/VITC.
True if device supports 8K video formats.
NTV2PixelFormats PixelFormats(void)
True if device has NTV4 FrameStores. (New in SDK 17.0)
UWord GetNumAnalogAudioInputChannels(void)
The number of HDMI audio output channels on the device.
The number of SDI video inputs on the device.
True if device fan can be thermostatically controlled.
bool CanDoColorCorrection(void)
True if device can can accommodate Apple ProRes-compressed video in its frame buffers.
True if device can handle HD (High Definition) video.
True if device has HDMI AUX data inserter(s).
bool CanReportFailSafeLoaded(void)
bool IsDirectAddressable(void)
bool CanDoMultiFormat(void)
The size, in bytes, of the device's active RAM available for video and audio.
The number of AES/EBU audio input channels on the device.
bool CanDoAnalogVideoOut(void)
True if device has Xilinx DMA hardware.
The number of down-converters on the device.
True if Audio System(s) support a 96kHz sample rate.
True if device has any AES audio inputs or outputs.
True if device has one or more analog video inputs.
True if device can do frame rate conversion.
True if device has a mechanical identification switch. (New in SDK 17.1)
The number of HDMI video inputs on the device.
UWord GetNumVideoInputs(void)
True if device can simultaneously handle different video formats on more than one SDI input or output...