aja: Remove unfinished 2x4K Squares support

Support for 2x4K Square Division will be added in a future update
master
Paul Hindt 2022-01-27 00:18:07 -08:00 committed by Colin Edwards
parent eafe588bd3
commit d18b805aee
4 changed files with 16 additions and 78 deletions

View File

@ -98,10 +98,6 @@ void populate_io_selection_input_list(const std::string &cardID,
for (auto i = 0; i < static_cast<int32_t>(IOSelection::NumIOSelections);
i++) {
auto ioSelect = static_cast<IOSelection>(i);
if (ioSelect == IOSelection::SDI1_2_Squares ||
ioSelect == IOSelection::SDI3_4_Squares)
continue;
if (aja::DeviceCanDoIOSelectionIn(deviceID, ioSelect)) {
obs_property_list_add_int(
list,
@ -134,9 +130,7 @@ void populate_io_selection_output_list(const std::string &cardID,
i++) {
auto ioSelect = static_cast<IOSelection>(i);
if (ioSelect == IOSelection::Invalid ||
ioSelect == IOSelection::SDI1_2_Squares ||
ioSelect == IOSelection::SDI3_4_Squares)
if (ioSelect == IOSelection::Invalid)
continue;
if (aja::DeviceCanDoIOSelectionOut(deviceID,
@ -630,15 +624,9 @@ std::string IOSelectionToString(IOSelection io)
case IOSelection::SDI1_2:
str = "SDI 1 & 2";
break;
case IOSelection::SDI1_2_Squares:
str = "SDI 1 & 2 (4K Squares)";
break;
case IOSelection::SDI3_4:
str = "SDI 3 & 4";
break;
case IOSelection::SDI3_4_Squares:
str = "SDI 3 & 4 (4K Squares)";
break;
case IOSelection::SDI5_6:
str = "SDI 5 & 6";
break;
@ -714,22 +702,10 @@ void IOSelectionToInputSources(IOSelection io, NTV2InputSourceSet &inputSources)
inputSources.insert(NTV2_INPUTSOURCE_SDI1);
inputSources.insert(NTV2_INPUTSOURCE_SDI2);
break;
case IOSelection::SDI1_2_Squares:
inputSources.insert(NTV2_INPUTSOURCE_SDI1);
inputSources.insert(NTV2_INPUTSOURCE_SDI2);
inputSources.insert(NTV2_INPUTSOURCE_SDI3);
inputSources.insert(NTV2_INPUTSOURCE_SDI4);
break;
case IOSelection::SDI3_4:
inputSources.insert(NTV2_INPUTSOURCE_SDI3);
inputSources.insert(NTV2_INPUTSOURCE_SDI4);
break;
case IOSelection::SDI3_4_Squares:
inputSources.insert(NTV2_INPUTSOURCE_SDI1);
inputSources.insert(NTV2_INPUTSOURCE_SDI2);
inputSources.insert(NTV2_INPUTSOURCE_SDI3);
inputSources.insert(NTV2_INPUTSOURCE_SDI4);
break;
case IOSelection::SDI5_6:
inputSources.insert(NTV2_INPUTSOURCE_SDI5);
inputSources.insert(NTV2_INPUTSOURCE_SDI6);
@ -808,24 +784,10 @@ void IOSelectionToOutputDests(IOSelection io,
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI1);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI2);
break;
// Requires 4x framestores and 2x SDI spigots
case IOSelection::SDI1_2_Squares:
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI1);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI2);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI3);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI4);
break;
case IOSelection::SDI3_4:
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI3);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI4);
break;
// Requires 4x framestores and 2x SDI spigots
case IOSelection::SDI3_4_Squares:
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI1);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI2);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI3);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI4);
break;
case IOSelection::SDI5_6:
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI5);
outputDests.insert(NTV2_OUTPUTDESTINATION_SDI6);
@ -934,9 +896,7 @@ bool IsSDITwoWireIOSelection(IOSelection io)
bool result = false;
switch (io) {
case IOSelection::SDI1_2:
case IOSelection::SDI1_2_Squares:
case IOSelection::SDI3_4:
case IOSelection::SDI3_4_Squares:
case IOSelection::SDI5_6:
case IOSelection::SDI7_8:
result = true;
@ -978,8 +938,7 @@ bool IsIOSelectionSDI(IOSelection io)
io == IOSelection::SDI3 || io == IOSelection::SDI4 ||
io == IOSelection::SDI5 || io == IOSelection::SDI6 ||
io == IOSelection::SDI7 || io == IOSelection::SDI8 ||
io == IOSelection::SDI1_2 || io == IOSelection::SDI1_2_Squares ||
io == IOSelection::SDI3_4 || io == IOSelection::SDI3_4_Squares ||
io == IOSelection::SDI1_2 || io == IOSelection::SDI3_4 ||
io == IOSelection::SDI5_6 || io == IOSelection::SDI7_8 ||
io == IOSelection::SDI1__4 || io == IOSelection::SDI5__8) {
return true;

View File

@ -30,24 +30,20 @@ enum class IOSelection {
SDI7 = 6,
SDI8 = 7,
SDI1_2 = 8,
// special case for 2xSDI 4K Squares (requires 4x framestores)
SDI1_2_Squares = 9,
SDI3_4 = 10,
// special case for 2xSDI 4K Squares (requires 4x framestores)
SDI3_4_Squares = 11,
SDI5_6 = 12,
SDI7_8 = 13,
SDI1__4 = 14,
SDI5__8 = 15,
HDMI1 = 16,
HDMI2 = 17,
HDMI3 = 18,
HDMI4 = 19,
HDMIMonitorIn = 20,
HDMIMonitorOut = 21,
AnalogIn = 22,
AnalogOut = 23,
Invalid = 24,
SDI3_4 = 9,
SDI5_6 = 10,
SDI7_8 = 11,
SDI1__4 = 12,
SDI5__8 = 13,
HDMI1 = 14,
HDMI2 = 15,
HDMI3 = 16,
HDMI4 = 17,
HDMIMonitorIn = 18,
HDMIMonitorOut = 19,
AnalogIn = 20,
AnalogOut = 21,
Invalid = 22,
NumIOSelections = Invalid
};

View File

@ -944,14 +944,6 @@ static void *aja_output_create(obs_data_t *settings, obs_output_t *output)
outputProps.audioNumChannels = kDefaultAudioChannels;
outputProps.audioSampleSize = kDefaultAudioSampleSize;
outputProps.audioSampleRate = kDefaultAudioSampleRate;
if (NTV2_IS_4K_VIDEO_FORMAT(outputProps.videoFormat) &&
outputProps.sdi4kTransport == SDITransport4K::Squares) {
if (outputProps.ioSelect == IOSelection::SDI1_2) {
outputProps.ioSelect = IOSelection::SDI1_2_Squares;
} else if (outputProps.ioSelect == IOSelection::SDI3_4) {
outputProps.ioSelect = IOSelection::SDI3_4_Squares;
}
}
if (outputProps.ioSelect == IOSelection::Invalid) {
blog(LOG_DEBUG,

View File

@ -953,15 +953,6 @@ static void aja_source_update(void *data, obs_data_t *settings)
ajaSource->SetCardID(wantCardID);
ajaSource->SetDeviceIndex((UWord)cardEntry->GetCardIndex());
if (NTV2_IS_4K_VIDEO_FORMAT(want_props.videoFormat) &&
want_props.sdi4kTransport == SDITransport4K::Squares) {
if (want_props.ioSelect == IOSelection::SDI1_2) {
want_props.ioSelect = IOSelection::SDI1_2_Squares;
} else if (want_props.ioSelect == IOSelection::SDI3_4) {
want_props.ioSelect = IOSelection::SDI3_4_Squares;
}
}
// Release Channels if IOSelection changes
if (want_props.ioSelect != curr_props.ioSelect) {
const std::string &ioSelectStr =