aja: Refactor, clean-up and fix bugs in the signal routing system, and add SDITransport UI option to assist signal routing.

This commit is contained in:
Paul Hindt
2022-01-07 18:45:08 -08:00
committed by Colin Edwards
parent d78971b4db
commit f09137a2e0
32 changed files with 2806 additions and 3297 deletions

View File

@@ -1,6 +1,7 @@
#pragma once
#include "aja-enums.hpp"
#include "aja-vpid-data.hpp"
#include <media-io/audio-io.h>
@@ -11,38 +12,6 @@
#include <string>
#include <vector>
class VPIDData {
public:
VPIDData();
VPIDData(ULWord vpidA, ULWord vpidB);
VPIDData(const VPIDData &other);
VPIDData(VPIDData &&other);
~VPIDData() = default;
VPIDData &operator=(const VPIDData &other);
VPIDData &operator=(VPIDData &&other);
bool operator==(const VPIDData &rhs) const;
bool operator!=(const VPIDData &rhs) const;
void SetA(ULWord vpidA);
void SetB(ULWord vpidB);
void Parse();
bool IsRGB() const;
VPIDStandard Standard() const;
VPIDSampling Sampling() const;
private:
ULWord mVpidA;
ULWord mVpidB;
VPIDStandard mStandardA;
VPIDSampling mSamplingA;
VPIDStandard mStandardB;
VPIDSampling mSamplingB;
};
using VPIDDataList = std::vector<VPIDData>;
//TODO(paulh): Consolidate the two Props classes
class SourceProps {
public:
@@ -56,6 +25,8 @@ public:
bool operator==(const SourceProps &props);
bool operator!=(const SourceProps &props);
NTV2InputSource InitialInputSource() const;
NTV2InputSourceSet InputSources() const;
NTV2Channel Channel() const;
NTV2AudioSystem AudioSystem() const;
NTV2AudioRate AudioRate() const;
@@ -65,10 +36,10 @@ public:
NTV2DeviceID deviceID;
IOSelection ioSelect;
NTV2InputSource inputSource;
NTV2VideoFormat videoFormat;
NTV2PixelFormat pixelFormat;
SDI4KTransport sdi4kTransport;
SDITransport sdiTransport;
SDITransport4K sdi4kTransport;
VPIDDataList vpids;
uint32_t audioNumChannels;
uint32_t audioSampleSize;
@@ -101,7 +72,8 @@ public:
NTV2OutputDestination outputDest;
NTV2VideoFormat videoFormat;
NTV2PixelFormat pixelFormat;
SDI4KTransport sdi4kTransport;
SDITransport sdiTransport;
SDITransport4K sdi4kTransport;
uint32_t audioNumChannels;
uint32_t audioSampleSize;
uint32_t audioSampleRate;