|
AJA NTV2 SDK
17.1.3.1410
NTV2 SDK 17.1.3.1410
|
Go to the documentation of this file.
8 #ifndef NTV2DEVICESCANNER_H
9 #define NTV2DEVICESCANNER_H
12 #if !defined(NTV2_DEPRECATE_17_1)
14 #endif // !defined(NTV2_DEPRECATE_17_1)
21 #if defined(VIRTUAL_DEVICES_SUPPORT)
28 typedef struct VirtualDeviceInfo
34 typedef std::map<string, std::vector<VirtualDeviceInfo>> NTV2SerialToVirtualDevices;
35 #endif // defined(VIRTUAL_DEVICES_SUPPORT)
37 #if !defined(NTV2_DEPRECATE_17_1)
120 #if defined(VIRTUAL_DEVICES_SUPPORT)
121 bool isVirtualDevice=
false;
122 std::string virtualDeviceName;
123 std::string virtualDeviceID;
124 #endif // defined(VIRTUAL_DEVICES_SUPPORT)
230 #endif // !defined(NTV2_DEPRECATE_17_1)
246 static bool GetDeviceAtIndex (
const ULWord inDeviceIndexNumber,
CNTV2Card & outDevice);
263 static bool GetFirstDeviceWithName (
const std::string & inNameSubString,
CNTV2Card & outDevice);
272 static bool GetFirstDeviceWithSerial (
const std::string & inSerialStr,
CNTV2Card & outDevice);
280 static bool GetDeviceWithSerial (
const uint64_t inSerialNumber,
CNTV2Card & outDevice);
294 static bool GetFirstDeviceFromArgument (
const std::string & inArgument,
CNTV2Card & outDevice);
296 static size_t GetNumDevices (
void);
302 static std::string GetDeviceRefName (
CNTV2Card & inDevice);
308 static bool IsLegalSerialNumber (
const std::string & inStr);
310 #if !defined(NTV2_DEPRECATE_17_1)
311 static NTV2_DEPRECATED_f(
bool IsLegalDecimalNumber (
const std::string & inStr,
const size_t maxLen = 2));
312 static NTV2_DEPRECATED_f(uint64_t IsLegalHexSerialNumber (
const std::string & inStr));
317 #endif // !defined(NTV2_DEPRECATE_17_1)
319 #if !defined(NTV2_DEPRECATE_17_1)
323 #if !defined(NTV2_DEPRECATE_16_3)
325 #endif // !defined(NTV2_DEPRECATE_16_3)
328 static void ScanHardware (
void);
329 #if !defined(NTV2_DEPRECATE_17_1)
331 #endif // !defined(NTV2_DEPRECATE_17_1)
332 static bool DeviceIDPresent (
const NTV2DeviceID inDeviceID,
const bool inRescan =
false);
333 static bool GetDeviceInfo (
const ULWord inDeviceIndexNumber,
NTV2DeviceInfo & outDeviceInfo,
const bool inRescan =
false);
335 static void SortDeviceInfoList (
void) {}
342 #if defined(VIRTUAL_DEVICES_SUPPORT)
343 static bool GetSerialToVirtualDeviceMap(NTV2SerialToVirtualDevices & outSerialToVirtualDevMap);
344 static bool GetCP2ConfigPath(
string & outCP2ConfigPath);
345 #endif // defined(VIRTUAL_DEVICES_SUPPORT)
346 #endif // !defined(NTV2_DEPRECATE_17_1)
349 #endif // NTV2DEVICESCANNER_H
std::ostream & operator<<(std::ostream &inOutStr, const NTV2AudioSampleRateList &inList)
Streams the NTV2AudioSampleRateList to the given output stream in a human-readable format.
Declares the AJASystemInfo class.
NTV2AudioSourceList audioOutSourceList
My supported audio output destinations (AES, etc.)
bool quarterExpandSupport
UWord numAnalogAudioInputChannels
Total number of analog audio input channels.
bool biDirectionalSDI
Supports Bi-directional SDI.
NTV2AudioBitsPerSampleList audioBitsPerSampleList
My supported audio bits-per-sample.
UWord numDownConverters
Total number of down-converters.
UWord numAnlgVidOutputs
Total number of analog video outputs.
bool has3GLevelConversion
Supports 3G Level Conversion?
This class is used to enumerate AJA devices that are attached and known to the local host computer.
UWord numHDMIVidInputs
Total number of HDMI inputs.
bool sdi12GSupport
Supports 12G?
NTV2DeviceInfoList::iterator NTV2DeviceInfoListIter
Declares common audio macros and structs used in the SDK.
uint64_t deviceSerialNumber
Unique device serial number.
bool ltcInSupport
Accepts LTC input?
NTV2DeviceInfoList GetDeviceInfoList(void)
NTV2AudioSourceList::const_iterator NTV2AudioSourceListConstIter
UWord numHDMIVidOutputs
Total number of HDMI outputs.
std::vector< NTV2DeviceInfo > NTV2DeviceInfoList
I am an ordered list of NTV2DeviceInfo structs.
UWord numSerialPorts
Total number of serial ports.
NTV2DeviceID
Identifies a specific AJA NTV2 device model number. The NTV2DeviceID is actually the PROM part number...
a class to store JSON values
Declares the most fundamental data types used by NTV2. Since Windows NT was the first principal devel...
UWord numHDMIAudioOutputChannels
Total number of HDMI audio output channels.
UWord numAnlgVidInputs
Total number of analog video inputs.
NTV2AudioChannelsPerFrameList::const_iterator NTV2AudioChannelsPerFrameListConstIter
std::vector< AudioBitsPerSampleEnum > NTV2AudioBitsPerSampleList
std::vector< AudioSampleRateEnum > NTV2AudioSampleRateList
UWord numVidOutputs
Total number of video outputs – analog, digital, whatever.
std::string deviceIdentifier
Device name as seen in Control Panel, Watcher, Cables, etc.
NTV2AudioSourceList audioInSourceList
My supported audio input sources (AES, ADAT, etc.)
bool has4KSupport
Supports 4K formats?
UWord numOutputConverters
Total number of output converters.
Declares the CNTV2Card class.
NTV2AudioSourceList::iterator NTV2AudioSourceListIter
AudioChannelsPerFrameEnum
UWord numDMAEngines
Total number of DMA engines.
I interrogate and control an AJA video/audio capture/playout device.
bool rgbAlphaOutputSupport
Supports RGB alpha channel?
UWord numAESAudioOutputChannels
Total number of AES audio output channels.
NTV2AudioPhysicalFormatList::iterator NTV2AudioPhysicalFormatListIter
bool has2KSupport
Supports 2K formats?
bool proResSupport
Supports ProRes?
bool stereoOutSupport
Supports stereo output?
UWord numUpConverters
Total number of up-converters.
UWord numEmbeddedAudioInputChannels
Total number of embedded (SDI) audio input channels.
bool programmableCSCSupport
Programmable color space converter?
NTV2DeviceInfoList::const_iterator NTV2DeviceInfoListConstIter
bool multiFormat
Supports multiple video formats?
NTV2AudioSampleRateList::iterator NTV2AudioSampleRateListIter
ULWord deviceIndex
Device index number – this will be phased out someday.
UWord numAnalogAudioOutputChannels
Total number of analog audio output channels.
UWord numHDMIAudioInputChannels
Total number of HDMI audio input channels.
bool operator!=(const json_pointer< RefStringTypeLhs > &lhs, const json_pointer< RefStringTypeRhs > &rhs) noexcept
UWord numVidInputs
Total number of video inputs – analog, digital, whatever.
bool has8KSupport
Supports 8K formats?
std::vector< AudioSourceEnum > NTV2AudioSourceList
#define NTV2_DEPRECATED_f(__f__)
NTV2AudioPhysicalFormatList::const_iterator NTV2AudioPhysicalFormatListConstIter
NTV2AudioSampleRateList audioSampleRateList
My supported audio sample rates.
NTV2AudioBitsPerSampleList::iterator NTV2AudioBitsPerSampleListIter
bool operator==(const NTV2DeviceInfo &rhs) const
ULWord pciSlot
PCI slot (if applicable and/or known)
NTV2AudioSampleRateList::const_iterator NTV2AudioSampleRateListConstIter
bool ltcOutSupport
Supports LTC output?
NTV2AudioChannelsPerFrameList::iterator NTV2AudioChannelsPerFrameListIter
UWord numInputConverters
Total number of input converters.
bool ipSupport
Supports IP IO?
bool colorCorrectionSupport
Supports color correction?
bool sdi3GSupport
Supports 3G?
bool breakoutBoxSupport
Can support a breakout box?
struct NTV2DeviceInfo NTV2DeviceInfo
std::vector< NTV2AudioPhysicalFormat > NTV2AudioPhysicalFormatList
I am an ordered list of NTV2AudioPhysicalFormat structs.
bool ltcInOnRefPort
Supports LTC on reference input?
NTV2AudioChannelsPerFrameList audioNumChannelsList
My supported number of audio channels per frame.
std::vector< AudioChannelsPerFrameEnum > NTV2AudioChannelsPerFrameList
basic_json<> json
default specialization
bool stereoInSupport
Supports stereo input?
UWord numAESAudioInputChannels
Total number of AES audio input channels.
NTV2DeviceID deviceID
Device ID/species (e.g., DEVICE_ID_KONA3G, DEVICE_ID_IOXT, etc.)
NTV2AudioBitsPerSampleList::const_iterator NTV2AudioBitsPerSampleListConstIter
UWord numAudioStreams
Maximum number of independent audio streams.
bool dualLinkSupport
Supports dual-link?
UWord numEmbeddedAudioOutputChannels
Total number of embedded (SDI) audio output channels.