mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-04-12 12:06:58 +00:00
Merge remote-tracking branch 'origin/development' into feature/ecs-1127
This commit is contained in:
commit
f2b2825220
53 changed files with 582 additions and 305 deletions
|
|
@ -5,6 +5,8 @@ using System.Text;
|
||||||
using Crestron.SimplSharp;
|
using Crestron.SimplSharp;
|
||||||
using Crestron.SimplSharpPro.DeviceSupport;
|
using Crestron.SimplSharpPro.DeviceSupport;
|
||||||
using Crestron.SimplSharpPro.DM;
|
using Crestron.SimplSharpPro.DM;
|
||||||
|
using Crestron.SimplSharpPro.DM.Endpoints;
|
||||||
|
using Crestron.SimplSharpPro.DM.Endpoints.Transmitters;
|
||||||
|
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
|
|
@ -27,6 +29,12 @@ namespace PepperDash.Essentials.Bridges
|
||||||
|
|
||||||
dmChassis.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.IsOnline]);
|
dmChassis.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.IsOnline]);
|
||||||
|
|
||||||
|
trilist.SetUShortSigAction(joinMap.SystemId, new Action<ushort>(o => dmChassis.Chassis.SystemId.UShortValue = o));
|
||||||
|
trilist.SetSigTrueAction(joinMap.SystemId, new Action(() => dmChassis.Chassis.ApplySystemId()));
|
||||||
|
|
||||||
|
dmChassis.SystemIdFeebdack.LinkInputSig(trilist.UShortInput[joinMap.SystemId]);
|
||||||
|
dmChassis.SystemIdBusyFeedback.LinkInputSig(trilist.BooleanInput[joinMap.SystemId]);
|
||||||
|
|
||||||
// Link up outputs
|
// Link up outputs
|
||||||
for (uint i = 1; i <= dmChassis.Chassis.NumberOfOutputs; i++)
|
for (uint i = 1; i <= dmChassis.Chassis.NumberOfOutputs; i++)
|
||||||
{
|
{
|
||||||
|
|
@ -35,29 +43,80 @@ namespace PepperDash.Essentials.Bridges
|
||||||
// Control
|
// Control
|
||||||
trilist.SetUShortSigAction(joinMap.OutputVideo + ioSlot, new Action<ushort>(o => dmChassis.ExecuteSwitch(o, ioSlot, eRoutingSignalType.Video)));
|
trilist.SetUShortSigAction(joinMap.OutputVideo + ioSlot, new Action<ushort>(o => dmChassis.ExecuteSwitch(o, ioSlot, eRoutingSignalType.Video)));
|
||||||
trilist.SetUShortSigAction(joinMap.OutputAudio + ioSlot, new Action<ushort>(o => dmChassis.ExecuteSwitch(o, ioSlot, eRoutingSignalType.Audio)));
|
trilist.SetUShortSigAction(joinMap.OutputAudio + ioSlot, new Action<ushort>(o => dmChassis.ExecuteSwitch(o, ioSlot, eRoutingSignalType.Audio)));
|
||||||
|
trilist.SetUShortSigAction(joinMap.OutputUsb + ioSlot, new Action<ushort>(o => dmChassis.ExecuteSwitch(o, ioSlot, eRoutingSignalType.UsbOutput)));
|
||||||
|
trilist.SetUShortSigAction(joinMap.InputUsb + ioSlot, new Action<ushort>(o => dmChassis.ExecuteSwitch(o, ioSlot, eRoutingSignalType.UsbInput)));
|
||||||
|
|
||||||
if (dmChassis.TxDictionary.ContainsKey(ioSlot))
|
if (dmChassis.TxDictionary.ContainsKey(ioSlot))
|
||||||
{
|
{
|
||||||
Debug.Console(2, "Creating Tx Feedbacks {0}", ioSlot);
|
Debug.Console(2, "Creating Tx Feedbacks {0}", ioSlot);
|
||||||
var TxKey = dmChassis.TxDictionary[ioSlot];
|
var txKey = dmChassis.TxDictionary[ioSlot];
|
||||||
var TxDevice = DeviceManager.GetDeviceForKey(TxKey) as DmTxControllerBase;
|
var basicTxDevice = DeviceManager.GetDeviceForKey(txKey) as BasicDmTxControllerBase;
|
||||||
|
|
||||||
|
var txDevice = basicTxDevice as DmTxControllerBase;
|
||||||
|
|
||||||
if (dmChassis.Chassis is DmMd8x8Cpu3 || dmChassis.Chassis is DmMd8x8Cpu3rps
|
if (dmChassis.Chassis is DmMd8x8Cpu3 || dmChassis.Chassis is DmMd8x8Cpu3rps
|
||||||
|| dmChassis.Chassis is DmMd16x16Cpu3 || dmChassis.Chassis is DmMd16x16Cpu3rps
|
|| dmChassis.Chassis is DmMd16x16Cpu3 || dmChassis.Chassis is DmMd16x16Cpu3rps
|
||||||
|| dmChassis.Chassis is DmMd32x32Cpu3 || dmChassis.Chassis is DmMd32x32Cpu3rps)
|
|| dmChassis.Chassis is DmMd32x32Cpu3 || dmChassis.Chassis is DmMd32x32Cpu3rps)
|
||||||
{
|
{
|
||||||
dmChassis.InputEndpointOnlineFeedbacks[ioSlot].LinkInputSig(trilist.BooleanInput[joinMap.InputEndpointOnline + ioSlot]);
|
dmChassis.InputEndpointOnlineFeedbacks[ioSlot].LinkInputSig(trilist.BooleanInput[joinMap.InputEndpointOnline + ioSlot]);
|
||||||
}
|
}
|
||||||
else if (TxDevice != null)
|
else
|
||||||
{
|
{
|
||||||
TxDevice.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.InputEndpointOnline + ioSlot]);
|
if (txDevice != null)
|
||||||
|
{
|
||||||
|
txDevice.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.InputEndpointOnline + ioSlot]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(basicTxDevice != null && txDevice == null)
|
||||||
|
trilist.BooleanInput[joinMap.TxAdvancedIsPresent + ioSlot].BoolValue = true;
|
||||||
|
|
||||||
|
|
||||||
|
if (txDevice != null)
|
||||||
|
{
|
||||||
|
txDevice.AnyVideoInput.VideoStatus.VideoSyncFeedback.LinkInputSig(trilist.BooleanInput[joinMap.InputEndpointOnline + ioSlot]);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var inputPort = dmChassis.InputPorts[string.Format("inputCard{0}--hdmiIn", ioSlot)];
|
||||||
|
if(inputPort != null)
|
||||||
|
{
|
||||||
|
var hdmiInPort = inputPort.Port;
|
||||||
|
|
||||||
|
if (hdmiInPort != null)
|
||||||
|
{
|
||||||
|
if (hdmiInPort is HdmiInputWithCEC)
|
||||||
|
{
|
||||||
|
var hdmiInPortWCec = hdmiInPort as HdmiInputWithCEC;
|
||||||
|
|
||||||
|
if (hdmiInPortWCec.HdcpSupportedLevel != eHdcpSupportedLevel.Unknown)
|
||||||
|
{
|
||||||
|
SetHdcpCapabilityAction(true, hdmiInPortWCec, joinMap.HdcpSupportState + ioSlot, trilist);
|
||||||
|
}
|
||||||
|
|
||||||
|
dmChassis.InputCardHdcpCapabilityFeedbacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.HdcpSupportState + ioSlot]);
|
||||||
|
|
||||||
|
trilist.UShortInput[joinMap.HdcpSupportCapability + ioSlot].UShortValue = (ushort)dmChassis.InputCardHdcpCapabilityTypes[ioSlot];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// TxDevice.AnyVideoInput.VideoStatus.VideoSyncFeedback.LinkInputSig(trilist.BooleanInput[joinMap.InputEndpointOnline + ioSlot]);
|
|
||||||
// trilist.SetUShortSigAction((ApiMap.HdcpSupport[ioSlot]), u => TxDevice.SetHdcpSupportAll((ePdtHdcpSupport)(u)));
|
|
||||||
// TxDevice.HdcpSupportAllFeedback.LinkInputSig(trilist.UShortInput[joinMap. + ioSlot]);
|
|
||||||
// trilist.UShortInput[ApiMap.HdcpSupportCapability[ioSlot]].UShortValue = TxDevice.HdcpSupportCapability;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// dmChassis.VideoInputSyncFeedbacks[ioSlot].LinkInputSig(trilist.BooleanInput[ApiMap.TxVideoSyncStatus[ioSlot]]);
|
dmChassis.VideoInputSyncFeedbacks[ioSlot].LinkInputSig(trilist.BooleanInput[joinMap.VideoSyncStatus + ioSlot]);
|
||||||
|
|
||||||
|
var inputPort = dmChassis.InputPorts[string.Format("inputCard{0}--hdmiIn", ioSlot)];
|
||||||
|
if (inputPort != null)
|
||||||
|
{
|
||||||
|
var hdmiPort = inputPort.Port as EndpointHdmiInput;
|
||||||
|
|
||||||
|
if (hdmiPort != null)
|
||||||
|
{
|
||||||
|
SetHdcpCapabilityAction(true, hdmiPort, joinMap.HdcpSupportState + ioSlot, trilist);
|
||||||
|
dmChassis.InputCardHdcpCapabilityFeedbacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.HdcpSupportState + ioSlot]);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (dmChassis.RxDictionary.ContainsKey(ioSlot))
|
if (dmChassis.RxDictionary.ContainsKey(ioSlot))
|
||||||
{
|
{
|
||||||
|
|
@ -75,11 +134,14 @@ namespace PepperDash.Essentials.Bridges
|
||||||
RxDevice.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.OutputEndpointOnline + ioSlot]);
|
RxDevice.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.OutputEndpointOnline + ioSlot]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Feedback
|
// Feedback
|
||||||
dmChassis.VideoOutputFeedbacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.OutputVideo + ioSlot]);
|
dmChassis.VideoOutputFeedbacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.OutputVideo + ioSlot]);
|
||||||
dmChassis.AudioOutputFeedbacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.OutputAudio + ioSlot]);
|
dmChassis.AudioOutputFeedbacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.OutputAudio + ioSlot]);
|
||||||
|
dmChassis.UsbOutputRoutedToFeebacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.OutputUsb + ioSlot]);
|
||||||
|
dmChassis.UsbInputRoutedToFeebacks[ioSlot].LinkInputSig(trilist.UShortInput[joinMap.InputUsb + ioSlot]);
|
||||||
|
|
||||||
dmChassis.VideoInputSyncFeedbacks[ioSlot].LinkInputSig(trilist.BooleanInput[joinMap.VideoSyncStatus + ioSlot]);
|
dmChassis.VideoInputSyncFeedbacks[ioSlot].LinkInputSig(trilist.BooleanInput[joinMap.VideoSyncStatus + ioSlot]);
|
||||||
|
|
||||||
dmChassis.OutputNameFeedbacks[ioSlot].LinkInputSig(trilist.StringInput[joinMap.OutputNames + ioSlot]);
|
dmChassis.OutputNameFeedbacks[ioSlot].LinkInputSig(trilist.StringInput[joinMap.OutputNames + ioSlot]);
|
||||||
dmChassis.InputNameFeedbacks[ioSlot].LinkInputSig(trilist.StringInput[joinMap.InputNames + ioSlot]);
|
dmChassis.InputNameFeedbacks[ioSlot].LinkInputSig(trilist.StringInput[joinMap.InputNames + ioSlot]);
|
||||||
|
|
@ -88,39 +150,118 @@ namespace PepperDash.Essentials.Bridges
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void SetHdcpCapabilityAction(bool hdcpTypeSimple, HdmiInputWithCEC port, uint join, BasicTriList trilist)
|
||||||
|
{
|
||||||
|
if (hdcpTypeSimple)
|
||||||
|
{
|
||||||
|
trilist.SetUShortSigAction(join,
|
||||||
|
new Action<ushort>(s =>
|
||||||
|
{
|
||||||
|
if (s == 0)
|
||||||
|
{
|
||||||
|
port.HdcpSupportOff();
|
||||||
|
}
|
||||||
|
else if (s > 0)
|
||||||
|
{
|
||||||
|
port.HdcpSupportOn();
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
trilist.SetUShortSigAction(join,
|
||||||
|
new Action<ushort>(s =>
|
||||||
|
{
|
||||||
|
port.HdcpReceiveCapability = (eHdcpCapabilityType)s;
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static void SetHdcpCapabilityAction(bool hdcpTypeSimple, EndpointHdmiInput port, uint join, BasicTriList trilist)
|
||||||
|
{
|
||||||
|
if (hdcpTypeSimple)
|
||||||
|
{
|
||||||
|
trilist.SetUShortSigAction(join,
|
||||||
|
new Action<ushort>(s =>
|
||||||
|
{
|
||||||
|
if (s == 0)
|
||||||
|
{
|
||||||
|
port.HdcpSupportOff();
|
||||||
|
}
|
||||||
|
else if (s > 0)
|
||||||
|
{
|
||||||
|
port.HdcpSupportOn();
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
trilist.SetUShortSigAction(join,
|
||||||
|
new Action<ushort>(s =>
|
||||||
|
{
|
||||||
|
port.HdcpCapability = (eHdcpCapabilityType)s;
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public class DmChassisControllerJoinMap : JoinMapBase
|
public class DmChassisControllerJoinMap : JoinMapBase
|
||||||
{
|
{
|
||||||
|
//Digital
|
||||||
|
public uint SystemId { get; set; }
|
||||||
public uint IsOnline { get; set; }
|
public uint IsOnline { get; set; }
|
||||||
|
public uint OutputUsb { get; set; }
|
||||||
|
public uint InputUsb { get; set; }
|
||||||
|
public uint VideoSyncStatus { get; set; }
|
||||||
|
public uint InputEndpointOnline { get; set; }
|
||||||
|
public uint OutputEndpointOnline { get; set; }
|
||||||
|
public uint TxAdvancedIsPresent { get; set; } // indicates that there is an attached transmitter that should be bridged to be interacted with
|
||||||
|
|
||||||
|
//Analog
|
||||||
public uint OutputVideo { get; set; }
|
public uint OutputVideo { get; set; }
|
||||||
public uint OutputAudio { get; set; }
|
public uint OutputAudio { get; set; }
|
||||||
public uint VideoSyncStatus { get; set; }
|
public uint HdcpSupportState { get; set; }
|
||||||
|
public uint HdcpSupportCapability { get; set; }
|
||||||
|
|
||||||
|
//SErial
|
||||||
public uint InputNames { get; set; }
|
public uint InputNames { get; set; }
|
||||||
public uint OutputNames { get; set; }
|
public uint OutputNames { get; set; }
|
||||||
public uint OutputCurrentVideoInputNames { get; set; }
|
public uint OutputCurrentVideoInputNames { get; set; }
|
||||||
public uint OutputCurrentAudioInputNames { get; set; }
|
public uint OutputCurrentAudioInputNames { get; set; }
|
||||||
public uint InputCurrentResolution { get; set; }
|
public uint InputCurrentResolution { get; set; }
|
||||||
public uint InputEndpointOnline { get; set; }
|
|
||||||
public uint OutputEndpointOnline { get; set; }
|
|
||||||
//public uint HdcpSupport { get; set; }
|
|
||||||
//public uint HdcpSupportCapability { get; set; }
|
|
||||||
|
|
||||||
|
|
||||||
public DmChassisControllerJoinMap()
|
public DmChassisControllerJoinMap()
|
||||||
{
|
{
|
||||||
|
SystemId = 10;
|
||||||
|
//Digital
|
||||||
IsOnline = 11;
|
IsOnline = 11;
|
||||||
|
VideoSyncStatus = 100; //101-299
|
||||||
|
InputEndpointOnline = 500; //501-699
|
||||||
|
OutputEndpointOnline = 700; //701-899
|
||||||
|
TxAdvancedIsPresent = 1000; //1001-1199
|
||||||
|
|
||||||
|
//Analog
|
||||||
OutputVideo = 100; //101-299
|
OutputVideo = 100; //101-299
|
||||||
OutputAudio = 300; //301-499
|
OutputAudio = 300; //301-499
|
||||||
|
OutputUsb = 500; //501-699
|
||||||
|
InputUsb = 700; //701-899
|
||||||
VideoSyncStatus = 100; //101-299
|
VideoSyncStatus = 100; //101-299
|
||||||
|
HdcpSupportState = 1000; //1001-1199
|
||||||
|
HdcpSupportCapability = 1200; //1201-1399
|
||||||
|
|
||||||
|
|
||||||
|
//Serial
|
||||||
InputNames = 100; //101-299
|
InputNames = 100; //101-299
|
||||||
OutputNames = 300; //301-499
|
OutputNames = 300; //301-499
|
||||||
OutputCurrentVideoInputNames = 2000; //2001-2199
|
OutputCurrentVideoInputNames = 2000; //2001-2199
|
||||||
OutputCurrentAudioInputNames = 2200; //2201-2399
|
OutputCurrentAudioInputNames = 2200; //2201-2399
|
||||||
InputCurrentResolution = 2400; // 2401-2599
|
InputCurrentResolution = 2400; // 2401-2599
|
||||||
InputEndpointOnline = 500;
|
InputEndpointOnline = 500; //501-699
|
||||||
OutputEndpointOnline = 700;
|
OutputEndpointOnline = 700; //701-899
|
||||||
//HdcpSupport = 1000; //1001-1199
|
HdcpSupportState = 1000; //1001-1199
|
||||||
//HdcpSupportCapability = 1200; //1201-1399
|
HdcpSupportCapability = 1200; //1201-1399
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -128,9 +269,12 @@ namespace PepperDash.Essentials.Bridges
|
||||||
{
|
{
|
||||||
var joinOffset = joinStart - 1;
|
var joinOffset = joinStart - 1;
|
||||||
|
|
||||||
|
SystemId = SystemId + joinOffset;
|
||||||
IsOnline = IsOnline + joinOffset;
|
IsOnline = IsOnline + joinOffset;
|
||||||
OutputVideo = OutputVideo + joinOffset;
|
OutputVideo = OutputVideo + joinOffset;
|
||||||
OutputAudio = OutputAudio + joinOffset;
|
OutputAudio = OutputAudio + joinOffset;
|
||||||
|
OutputUsb = OutputUsb + joinOffset;
|
||||||
|
InputUsb = InputUsb + joinOffset;
|
||||||
VideoSyncStatus = VideoSyncStatus + joinOffset;
|
VideoSyncStatus = VideoSyncStatus + joinOffset;
|
||||||
InputNames = InputNames + joinOffset;
|
InputNames = InputNames + joinOffset;
|
||||||
OutputNames = OutputNames + joinOffset;
|
OutputNames = OutputNames + joinOffset;
|
||||||
|
|
@ -139,8 +283,8 @@ namespace PepperDash.Essentials.Bridges
|
||||||
InputCurrentResolution = InputCurrentResolution + joinOffset;
|
InputCurrentResolution = InputCurrentResolution + joinOffset;
|
||||||
InputEndpointOnline = InputEndpointOnline + joinOffset;
|
InputEndpointOnline = InputEndpointOnline + joinOffset;
|
||||||
OutputEndpointOnline = OutputEndpointOnline + joinOffset;
|
OutputEndpointOnline = OutputEndpointOnline + joinOffset;
|
||||||
//HdcpSupport = HdcpSupport + joinOffset;
|
HdcpSupportState = HdcpSupportState + joinOffset;
|
||||||
//HdcpSupportCapability = HdcpSupportCapability + joinOffset;
|
HdcpSupportCapability = HdcpSupportCapability + joinOffset;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ namespace PepperDash.Essentials.Bridges
|
||||||
tx.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.IsOnline]);
|
tx.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.IsOnline]);
|
||||||
tx.AnyVideoInput.VideoStatus.VideoSyncFeedback.LinkInputSig(trilist.BooleanInput[joinMap.VideoSyncStatus]);
|
tx.AnyVideoInput.VideoStatus.VideoSyncFeedback.LinkInputSig(trilist.BooleanInput[joinMap.VideoSyncStatus]);
|
||||||
tx.AnyVideoInput.VideoStatus.VideoResolutionFeedback.LinkInputSig(trilist.StringInput[joinMap.CurrentInputResolution]);
|
tx.AnyVideoInput.VideoStatus.VideoResolutionFeedback.LinkInputSig(trilist.StringInput[joinMap.CurrentInputResolution]);
|
||||||
//tx.HdcpSupportAllFeedback.LinkInputSig(trilist.UShortInput[joinMap.HdcpSupportCapability]);
|
trilist.UShortInput[joinMap.HdcpSupportCapability].UShortValue = (ushort)tx.HdcpSupportCapability;
|
||||||
|
|
||||||
bool hdcpTypeSimple;
|
bool hdcpTypeSimple;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -50,19 +50,19 @@ namespace PepperDash.Essentials.Core
|
||||||
|
|
||||||
InputPorts.AddRange(new RoutingPortCollection<RoutingInputPort>
|
InputPorts.AddRange(new RoutingPortCollection<RoutingInputPort>
|
||||||
{
|
{
|
||||||
new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.AudioVideo,
|
new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(Hdmi1), this, false),
|
eRoutingPortConnectionType.Hdmi, new Action(Hdmi1), this, false),
|
||||||
new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo,
|
new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(Hdmi2), this, false),
|
eRoutingPortConnectionType.Hdmi, new Action(Hdmi2), this, false),
|
||||||
new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.AudioVideo,
|
new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(Hdmi3), this, false),
|
eRoutingPortConnectionType.Hdmi, new Action(Hdmi3), this, false),
|
||||||
new RoutingInputPort(RoutingPortNames.HdmiIn4, eRoutingSignalType.AudioVideo,
|
new RoutingInputPort(RoutingPortNames.HdmiIn4, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(Hdmi4), this, false),
|
eRoutingPortConnectionType.Hdmi, new Action(Hdmi4), this, false),
|
||||||
new RoutingInputPort(RoutingPortNames.ComponentIn, eRoutingSignalType.AudioVideo,
|
new RoutingInputPort(RoutingPortNames.ComponentIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(Component1), this, false),
|
eRoutingPortConnectionType.Hdmi, new Action(Component1), this, false),
|
||||||
new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.AudioVideo,
|
new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(Video1), this, false),
|
eRoutingPortConnectionType.Hdmi, new Action(Video1), this, false),
|
||||||
new RoutingInputPort(RoutingPortNames.AntennaIn, eRoutingSignalType.AudioVideo,
|
new RoutingInputPort(RoutingPortNames.AntennaIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(Antenna), this, false),
|
eRoutingPortConnectionType.Hdmi, new Action(Antenna), this, false),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -43,11 +43,11 @@ namespace PepperDash.Essentials.Core
|
||||||
public MockDisplay(string key, string name)
|
public MockDisplay(string key, string name)
|
||||||
: base(key, name)
|
: base(key, name)
|
||||||
{
|
{
|
||||||
HdmiIn1 = new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.AudioVideo,
|
HdmiIn1 = new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
HdmiIn2 = new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo,
|
HdmiIn2 = new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
HdmiIn3 = new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.AudioVideo,
|
HdmiIn3 = new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
ComponentIn1 = new RoutingInputPort(RoutingPortNames.ComponentIn, eRoutingSignalType.Video,
|
ComponentIn1 = new RoutingInputPort(RoutingPortNames.ComponentIn, eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Component, null, this);
|
eRoutingPortConnectionType.Component, null, this);
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ namespace PepperDash.Essentials.Core.Routing
|
||||||
/// <param name="key">key for special device</param>
|
/// <param name="key">key for special device</param>
|
||||||
public DummyRoutingInputsDevice(string key) : base(key)
|
public DummyRoutingInputsDevice(string key) : base(key)
|
||||||
{
|
{
|
||||||
AudioVideoOutputPort = new RoutingOutputPort("internal", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.BackplaneOnly,
|
AudioVideoOutputPort = new RoutingOutputPort("internal", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.BackplaneOnly,
|
||||||
null, this, true);
|
null, this, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@ namespace PepperDash.Essentials.Core
|
||||||
{
|
{
|
||||||
var routeDescr = new RouteDescriptor(source, destination, signalType);
|
var routeDescr = new RouteDescriptor(source, destination, signalType);
|
||||||
// if it's a single signal type, find the route
|
// if it's a single signal type, find the route
|
||||||
if (signalType != eRoutingSignalType.AudioVideo)
|
if ((signalType & (eRoutingSignalType.Audio & eRoutingSignalType.Video)) == (eRoutingSignalType.Audio & eRoutingSignalType.Video))
|
||||||
{
|
{
|
||||||
Debug.Console(1, destination, "Attempting to build source route from {0}", source.Key);
|
Debug.Console(1, destination, "Attempting to build source route from {0}", source.Key);
|
||||||
if (!destination.GetRouteToSource(source, null, null, signalType, 0, routeDescr))
|
if (!destination.GetRouteToSource(source, null, null, signalType, 0, routeDescr))
|
||||||
|
|
@ -106,7 +106,7 @@ namespace PepperDash.Essentials.Core
|
||||||
|
|
||||||
RoutingInputPort goodInputPort = null;
|
RoutingInputPort goodInputPort = null;
|
||||||
var destDevInputTies = TieLineCollection.Default.Where(t =>
|
var destDevInputTies = TieLineCollection.Default.Where(t =>
|
||||||
t.DestinationPort.ParentDevice == destination && (t.Type == signalType || t.Type == eRoutingSignalType.AudioVideo));
|
t.DestinationPort.ParentDevice == destination && (t.Type == signalType || (t.Type & (eRoutingSignalType.Audio | eRoutingSignalType.Video)) == (eRoutingSignalType.Audio | eRoutingSignalType.Video)));
|
||||||
|
|
||||||
// find a direct tie
|
// find a direct tie
|
||||||
var directTie = destDevInputTies.FirstOrDefault(
|
var directTie = destDevInputTies.FirstOrDefault(
|
||||||
|
|
|
||||||
|
|
@ -32,8 +32,10 @@ namespace PepperDash.Essentials.Core
|
||||||
public enum eRoutingSignalType
|
public enum eRoutingSignalType
|
||||||
{
|
{
|
||||||
Audio = 1,
|
Audio = 1,
|
||||||
Video = 2,
|
Video = 2,
|
||||||
AudioVideo = 4
|
//AudioVideo = 4,
|
||||||
|
UsbOutput = 4,
|
||||||
|
UsbInput = 8
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum eRoutingPortConnectionType
|
public enum eRoutingPortConnectionType
|
||||||
|
|
|
||||||
|
|
@ -46,13 +46,13 @@ namespace PepperDash.Essentials.DM.AirMedia
|
||||||
|
|
||||||
PropertiesConfig = props;
|
PropertiesConfig = props;
|
||||||
|
|
||||||
InputPorts.Add(new RoutingInputPort(DmPortName.Osd, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(DmPortName.Osd, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.None, new Action(SelectPinPointUxLandingPage), this));
|
eRoutingPortConnectionType.None, new Action(SelectPinPointUxLandingPage), this));
|
||||||
|
|
||||||
InputPorts.Add(new RoutingInputPort(DmPortName.AirMediaIn, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(DmPortName.AirMediaIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Streaming, new Action(SelectAirMedia), this));
|
eRoutingPortConnectionType.Streaming, new Action(SelectAirMedia), this));
|
||||||
|
|
||||||
InputPorts.Add(new RoutingInputPort(DmPortName.HdmiIn, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(DmPortName.HdmiIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(SelectHdmiIn), this));
|
eRoutingPortConnectionType.Hdmi, new Action(SelectHdmiIn), this));
|
||||||
|
|
||||||
InputPorts.Add(new RoutingInputPort(DmPortName.AirBoardIn, eRoutingSignalType.Video,
|
InputPorts.Add(new RoutingInputPort(DmPortName.AirBoardIn, eRoutingSignalType.Video,
|
||||||
|
|
@ -60,7 +60,7 @@ namespace PepperDash.Essentials.DM.AirMedia
|
||||||
|
|
||||||
if (AirMedia is Am300)
|
if (AirMedia is Am300)
|
||||||
{
|
{
|
||||||
InputPorts.Add(new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, new Action(SelectDmIn), this));
|
eRoutingPortConnectionType.DmCat, new Action(SelectDmIn), this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,11 +30,11 @@ namespace PepperDash.Essentials.DM.Cards
|
||||||
: base(key, slot)
|
: base(key, slot)
|
||||||
{
|
{
|
||||||
Card = card;
|
Card = card;
|
||||||
//DmOut1 = new RoutingOutputPort(DmPortName.DmOut1, eRoutingSignalType.AudioVideo,
|
//DmOut1 = new RoutingOutputPort(DmPortName.DmOut1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// eRoutingPortConnectionType.DmCat, null, this);
|
// eRoutingPortConnectionType.DmCat, null, this);
|
||||||
//DmOut2 = new RoutingOutputPort(DmPortName.DmOut2, eRoutingSignalType.AudioVideo,
|
//DmOut2 = new RoutingOutputPort(DmPortName.DmOut2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// eRoutingPortConnectionType.DmCat, null, this);
|
// eRoutingPortConnectionType.DmCat, null, this);
|
||||||
//HdmiOut1 = new RoutingOutputPort(DmPortName.HdmiOut1, eRoutingSignalType.AudioVideo,
|
//HdmiOut1 = new RoutingOutputPort(DmPortName.HdmiOut1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// eRoutingPortConnectionType.Hdmi, null, this);
|
// eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
//OutputPorts.AddRange(new[] { DmOut1, DmOut2, HdmiOut1 });
|
//OutputPorts.AddRange(new[] { DmOut1, DmOut2, HdmiOut1 });
|
||||||
|
|
|
||||||
|
|
@ -35,9 +35,9 @@
|
||||||
// // eRoutingPortConnectionType.LineAudio, null, this);
|
// // eRoutingPortConnectionType.LineAudio, null, this);
|
||||||
// //AudioOut2 = new RoutingOutputPort(DmPortName.BalancedAudioOut2, eRoutingSignalType.Audio,
|
// //AudioOut2 = new RoutingOutputPort(DmPortName.BalancedAudioOut2, eRoutingSignalType.Audio,
|
||||||
// // eRoutingPortConnectionType.LineAudio, null, this);
|
// // eRoutingPortConnectionType.LineAudio, null, this);
|
||||||
// //HdmiOut1 = new RoutingOutputPort(DmPortName.HdmiOut1, eRoutingSignalType.AudioVideo,
|
// //HdmiOut1 = new RoutingOutputPort(DmPortName.HdmiOut1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
// //HdmiOut2 = new RoutingOutputPort(DmPortName.HdmiOut2, eRoutingSignalType.AudioVideo,
|
// //HdmiOut2 = new RoutingOutputPort(DmPortName.HdmiOut2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
// //OutputPorts.AddRange(new[] { AudioOut1, AudioOut2, HdmiOut1, HdmiOut2 });
|
// //OutputPorts.AddRange(new[] { AudioOut1, AudioOut2, HdmiOut1, HdmiOut2 });
|
||||||
|
|
|
||||||
|
|
@ -29,11 +29,11 @@
|
||||||
// : base(key, slot)
|
// : base(key, slot)
|
||||||
// {
|
// {
|
||||||
// Card = card;
|
// Card = card;
|
||||||
// //DmIn = new RoutingInputPortWithVideoStatuses(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
// //DmIn = new RoutingInputPortWithVideoStatuses(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.DmCat, null, this,
|
// // eRoutingPortConnectionType.DmCat, null, this,
|
||||||
// // VideoStatusHelper.GetDmInputStatusFuncs(Card.DmInput));
|
// // VideoStatusHelper.GetDmInputStatusFuncs(Card.DmInput));
|
||||||
|
|
||||||
// //HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
// //HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
// //AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
// //AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
@ -59,11 +59,11 @@
|
||||||
// : base(key, slot)
|
// : base(key, slot)
|
||||||
// {
|
// {
|
||||||
// Card = card;
|
// Card = card;
|
||||||
// //DmIn = new RoutingInputPortWithVideoStatuses(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
// //DmIn = new RoutingInputPortWithVideoStatuses(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.DmCat, null, this,
|
// // eRoutingPortConnectionType.DmCat, null, this,
|
||||||
// // VideoStatusHelper.GetDmInputStatusFuncs(Card.DmInput));
|
// // VideoStatusHelper.GetDmInputStatusFuncs(Card.DmInput));
|
||||||
|
|
||||||
// //HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
// //HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
// //AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
// //AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
|
||||||
|
|
@ -32,11 +32,11 @@
|
||||||
// : base(key, slot)
|
// : base(key, slot)
|
||||||
// {
|
// {
|
||||||
// Card = card;
|
// Card = card;
|
||||||
// HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.AudioVideo,
|
// HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// eRoutingPortConnectionType.Hdmi, null, this,
|
// eRoutingPortConnectionType.Hdmi, null, this,
|
||||||
// VideoStatusHelper.GetHdmiInputStatusFuncs(Card.HdmiInput));
|
// VideoStatusHelper.GetHdmiInputStatusFuncs(Card.HdmiInput));
|
||||||
|
|
||||||
// HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
// HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// eRoutingPortConnectionType.Hdmi, null, this);
|
// eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
// AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
// AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
||||||
// eRoutingPortConnectionType.Hdmi, null, this);
|
// eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
@ -65,11 +65,11 @@
|
||||||
// : base(key, slot)
|
// : base(key, slot)
|
||||||
// {
|
// {
|
||||||
// Card = card;
|
// Card = card;
|
||||||
// //HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.AudioVideo,
|
// //HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this,
|
// // eRoutingPortConnectionType.Hdmi, null, this,
|
||||||
// // VideoStatusHelper.GetHdmiInputStatusFuncs(Card.HdmiInput));
|
// // VideoStatusHelper.GetHdmiInputStatusFuncs(Card.HdmiInput));
|
||||||
|
|
||||||
// //HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
// //HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
// //AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
// //AudioLoopOut = new RoutingOutputPort(DmPortName.AudioLoopOut, eRoutingSignalType.Audio,
|
||||||
// // eRoutingPortConnectionType.Hdmi, null, this);
|
// // eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,16 @@ namespace PepperDash.Essentials.DM
|
||||||
public Dictionary<uint, StringFeedback> OutputNameFeedbacks { get; private set; }
|
public Dictionary<uint, StringFeedback> OutputNameFeedbacks { get; private set; }
|
||||||
public Dictionary<uint, StringFeedback> OutputVideoRouteNameFeedbacks { get; private set; }
|
public Dictionary<uint, StringFeedback> OutputVideoRouteNameFeedbacks { get; private set; }
|
||||||
public Dictionary<uint, StringFeedback> OutputAudioRouteNameFeedbacks { get; private set; }
|
public Dictionary<uint, StringFeedback> OutputAudioRouteNameFeedbacks { get; private set; }
|
||||||
|
public Dictionary<uint, IntFeedback> UsbOutputRoutedToFeebacks { get; private set; }
|
||||||
|
public Dictionary<uint, IntFeedback> UsbInputRoutedToFeebacks { get; private set; }
|
||||||
|
|
||||||
|
public IntFeedback SystemIdFeebdack { get; private set; }
|
||||||
|
public BoolFeedback SystemIdBusyFeedback { get; private set; }
|
||||||
|
|
||||||
|
|
||||||
|
public Dictionary<uint, IntFeedback> InputCardHdcpCapabilityFeedbacks { get; private set; }
|
||||||
|
|
||||||
|
public Dictionary<uint, eHdcpCapabilityType> InputCardHdcpCapabilityTypes { get; private set; }
|
||||||
|
|
||||||
|
|
||||||
// Need a couple Lists of generic Backplane ports
|
// Need a couple Lists of generic Backplane ports
|
||||||
|
|
@ -143,10 +153,12 @@ namespace PepperDash.Essentials.DM
|
||||||
RxDictionary = new Dictionary<uint, string>();
|
RxDictionary = new Dictionary<uint, string>();
|
||||||
IsOnline.OutputChange += new EventHandler<FeedbackEventArgs>(IsOnline_OutputChange);
|
IsOnline.OutputChange += new EventHandler<FeedbackEventArgs>(IsOnline_OutputChange);
|
||||||
Chassis.DMInputChange += new DMInputEventHandler(Chassis_DMInputChange);
|
Chassis.DMInputChange += new DMInputEventHandler(Chassis_DMInputChange);
|
||||||
//Chassis.DMSystemChange += new DMSystemEventHandler(Chassis_DMSystemChange);
|
Chassis.DMSystemChange += new DMSystemEventHandler(Chassis_DMSystemChange);
|
||||||
Chassis.DMOutputChange += new DMOutputEventHandler(Chassis_DMOutputChange);
|
Chassis.DMOutputChange += new DMOutputEventHandler(Chassis_DMOutputChange);
|
||||||
VideoOutputFeedbacks = new Dictionary<uint, IntFeedback>();
|
VideoOutputFeedbacks = new Dictionary<uint, IntFeedback>();
|
||||||
AudioOutputFeedbacks = new Dictionary<uint, IntFeedback>();
|
AudioOutputFeedbacks = new Dictionary<uint, IntFeedback>();
|
||||||
|
UsbOutputRoutedToFeebacks = new Dictionary<uint, IntFeedback>();
|
||||||
|
UsbInputRoutedToFeebacks = new Dictionary<uint, IntFeedback>();
|
||||||
VideoInputSyncFeedbacks = new Dictionary<uint, BoolFeedback>();
|
VideoInputSyncFeedbacks = new Dictionary<uint, BoolFeedback>();
|
||||||
InputNameFeedbacks = new Dictionary<uint, StringFeedback>();
|
InputNameFeedbacks = new Dictionary<uint, StringFeedback>();
|
||||||
OutputNameFeedbacks = new Dictionary<uint, StringFeedback>();
|
OutputNameFeedbacks = new Dictionary<uint, StringFeedback>();
|
||||||
|
|
@ -155,6 +167,11 @@ namespace PepperDash.Essentials.DM
|
||||||
InputEndpointOnlineFeedbacks = new Dictionary<uint, BoolFeedback>();
|
InputEndpointOnlineFeedbacks = new Dictionary<uint, BoolFeedback>();
|
||||||
OutputEndpointOnlineFeedbacks = new Dictionary<uint, BoolFeedback>();
|
OutputEndpointOnlineFeedbacks = new Dictionary<uint, BoolFeedback>();
|
||||||
|
|
||||||
|
SystemIdFeebdack = new IntFeedback(() => { return Chassis.SystemIdFeedback.UShortValue; });
|
||||||
|
SystemIdBusyFeedback = new BoolFeedback(() => { return Chassis.SystemIdBusy.BoolValue; });
|
||||||
|
InputCardHdcpCapabilityFeedbacks = new Dictionary<uint, IntFeedback>();
|
||||||
|
InputCardHdcpCapabilityTypes = new Dictionary<uint, eHdcpCapabilityType>();
|
||||||
|
|
||||||
|
|
||||||
for (uint x = 1; x <= Chassis.NumberOfOutputs; x++)
|
for (uint x = 1; x <= Chassis.NumberOfOutputs; x++)
|
||||||
{
|
{
|
||||||
|
|
@ -168,6 +185,14 @@ namespace PepperDash.Essentials.DM
|
||||||
if (Chassis.Outputs[tempX].AudioOutFeedback != null) { return (ushort)Chassis.Outputs[tempX].AudioOutFeedback.Number; }
|
if (Chassis.Outputs[tempX].AudioOutFeedback != null) { return (ushort)Chassis.Outputs[tempX].AudioOutFeedback.Number; }
|
||||||
else { return 0; };
|
else { return 0; };
|
||||||
});
|
});
|
||||||
|
UsbOutputRoutedToFeebacks[tempX] = new IntFeedback(() => {
|
||||||
|
if(Chassis.Outputs[tempX].USBRoutedToFeedback != null) { return (ushort)Chassis.Outputs[tempX].USBRoutedToFeedback.Number; }
|
||||||
|
else {return 0; };
|
||||||
|
});
|
||||||
|
UsbInputRoutedToFeebacks[tempX] = new IntFeedback(() => {
|
||||||
|
if(Chassis.Inputs[tempX].USBRoutedToFeedback != null) { return (ushort)Chassis.Inputs[tempX].USBRoutedToFeedback.Number; }
|
||||||
|
else {return 0; };
|
||||||
|
});
|
||||||
VideoInputSyncFeedbacks[tempX] = new BoolFeedback(() => {
|
VideoInputSyncFeedbacks[tempX] = new BoolFeedback(() => {
|
||||||
return Chassis.Inputs[tempX].VideoDetectedFeedback.BoolValue;
|
return Chassis.Inputs[tempX].VideoDetectedFeedback.BoolValue;
|
||||||
});
|
});
|
||||||
|
|
@ -214,9 +239,42 @@ namespace PepperDash.Essentials.DM
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
InputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() => { return Chassis.Inputs[tempX].EndpointOnlineFeedback; });
|
InputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() => { return Chassis.Inputs[tempX].EndpointOnlineFeedback; });
|
||||||
|
|
||||||
OutputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() => { return Chassis.Outputs[tempX].EndpointOnlineFeedback; });
|
OutputEndpointOnlineFeedbacks[tempX] = new BoolFeedback(() => { return Chassis.Outputs[tempX].EndpointOnlineFeedback; });
|
||||||
|
|
||||||
|
InputCardHdcpCapabilityFeedbacks[tempX] = new IntFeedback(() =>
|
||||||
|
{
|
||||||
|
var inputCard = Chassis.Inputs[tempX];
|
||||||
|
|
||||||
|
if (inputCard.Card is DmcHd)
|
||||||
|
{
|
||||||
|
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
||||||
|
|
||||||
|
if ((inputCard.Card as DmcHd).HdmiInput.HdcpSupportOnFeedback.BoolValue)
|
||||||
|
return 1;
|
||||||
|
else
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (inputCard.Card is DmcHdDsp)
|
||||||
|
{
|
||||||
|
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.HdcpAutoSupport;
|
||||||
|
|
||||||
|
if ((inputCard.Card as DmcHdDsp).HdmiInput.HdcpSupportOnFeedback.BoolValue)
|
||||||
|
return 1;
|
||||||
|
else
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else if (inputCard.Card is Dmc4kHdBase)
|
||||||
|
{
|
||||||
|
InputCardHdcpCapabilityTypes[tempX] = eHdcpCapabilityType.Hdcp2_2Support;
|
||||||
|
|
||||||
|
return (int)(inputCard.Card as Dmc4kHdBase).HdmiInput.HdcpReceiveCapability;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return 0;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -229,7 +287,9 @@ namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "Adding input card '{0}', slot {1}", type, number);
|
Debug.Console(2, this, "Adding input card '{0}', slot {1}", type, number);
|
||||||
|
|
||||||
if (type == "dmcHd")
|
type = type.ToLower();
|
||||||
|
|
||||||
|
if (type == "dmchd")
|
||||||
{
|
{
|
||||||
var inputCard = new DmcHd(number, this.Chassis);
|
var inputCard = new DmcHd(number, this.Chassis);
|
||||||
var cecPort = inputCard.HdmiInput as ICec;
|
var cecPort = inputCard.HdmiInput as ICec;
|
||||||
|
|
@ -241,7 +301,7 @@ namespace PepperDash.Essentials.DM
|
||||||
var cecPort = inputCard.HdmiInput as ICec;
|
var cecPort = inputCard.HdmiInput as ICec;
|
||||||
AddHdmiInCardPorts(number, cecPort);
|
AddHdmiInCardPorts(number, cecPort);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kHd")
|
else if (type == "dmc4khd")
|
||||||
{
|
{
|
||||||
var inputCard = new Dmc4kHd(number, this.Chassis);
|
var inputCard = new Dmc4kHd(number, this.Chassis);
|
||||||
var cecPort = inputCard.HdmiInput as ICec;
|
var cecPort = inputCard.HdmiInput as ICec;
|
||||||
|
|
@ -253,125 +313,125 @@ namespace PepperDash.Essentials.DM
|
||||||
var cecPort = inputCard.HdmiInput as ICec;
|
var cecPort = inputCard.HdmiInput as ICec;
|
||||||
AddHdmiInCardPorts(number, cecPort);
|
AddHdmiInCardPorts(number, cecPort);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kzHd")
|
else if (type == "dmc4kzhd")
|
||||||
{
|
{
|
||||||
var inputCard = new Dmc4kzHd(number, this.Chassis);
|
var inputCard = new Dmc4kzHd(number, this.Chassis);
|
||||||
var cecPort = inputCard.HdmiInput as ICec;
|
var cecPort = inputCard.HdmiInput as ICec;
|
||||||
AddHdmiInCardPorts(number, cecPort);
|
AddHdmiInCardPorts(number, cecPort);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kzHdDsp")
|
else if (type == "dmc4kzhddsp")
|
||||||
{
|
{
|
||||||
var inputCard = new Dmc4kzHdDsp(number, this.Chassis);
|
var inputCard = new Dmc4kzHdDsp(number, this.Chassis);
|
||||||
var cecPort = inputCard.HdmiInput as ICec;
|
var cecPort = inputCard.HdmiInput as ICec;
|
||||||
AddHdmiInCardPorts(number, cecPort);
|
AddHdmiInCardPorts(number, cecPort);
|
||||||
}
|
}
|
||||||
else if (type == "dmcC")
|
else if (type == "dmcc")
|
||||||
{
|
{
|
||||||
new DmcC(number, this.Chassis);
|
new DmcC(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcCDsp")
|
else if (type == "dmccdsp")
|
||||||
{
|
{
|
||||||
new DmcCDsp(number, this.Chassis);
|
new DmcCDsp(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kC")
|
else if (type == "dmc4kc")
|
||||||
{
|
{
|
||||||
new Dmc4kC(number, this.Chassis);
|
new Dmc4kC(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kCDsp")
|
else if (type == "dmc4kcdsp")
|
||||||
{
|
{
|
||||||
new Dmc4kCDsp(number, this.Chassis);
|
new Dmc4kCDsp(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kzC")
|
else if (type == "dmc4kzc")
|
||||||
{
|
{
|
||||||
new Dmc4kzC(number, this.Chassis);
|
new Dmc4kzC(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kzCDsp")
|
else if (type == "dmc4kzcdsp")
|
||||||
{
|
{
|
||||||
new Dmc4kzCDsp(number, this.Chassis);
|
new Dmc4kzCDsp(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcCat")
|
else if (type == "dmccat")
|
||||||
{
|
{
|
||||||
new DmcCat(number, this.Chassis);
|
new DmcCat(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcCatDsp")
|
else if (type == "dmccatdsp")
|
||||||
{
|
{
|
||||||
new DmcCatDsp(number, this.Chassis);
|
new DmcCatDsp(number, this.Chassis);
|
||||||
AddDmInCardPorts(number);
|
AddDmInCardPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcS")
|
else if (type == "dmcs")
|
||||||
{
|
{
|
||||||
new DmcS(number, Chassis);
|
new DmcS(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber);
|
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcSDsp")
|
else if (type == "dmcsdsp")
|
||||||
{
|
{
|
||||||
new DmcSDsp(number, Chassis);
|
new DmcSDsp(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber);
|
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcS2")
|
else if (type == "dmcs2")
|
||||||
{
|
{
|
||||||
new DmcS2(number, Chassis);
|
new DmcS2(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber);
|
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcS2Dsp")
|
else if (type == "dmcs2dsp")
|
||||||
{
|
{
|
||||||
new DmcS2Dsp(number, Chassis);
|
new DmcS2Dsp(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber);
|
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcSdi")
|
else if (type == "dmcsdi")
|
||||||
{
|
{
|
||||||
new DmcSdi(number, Chassis);
|
new DmcSdi(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "sdiIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Sdi);
|
AddInputPortWithDebug(number, "sdiIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Sdi);
|
||||||
AddOutputPortWithDebug(number, "sdiOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Sdi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "sdiOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Sdi, null);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcDvi")
|
else if (type == "dmcdvi")
|
||||||
{
|
{
|
||||||
new DmcDvi(number, Chassis);
|
new DmcDvi(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "dviIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Dvi);
|
AddInputPortWithDebug(number, "dviIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Dvi);
|
||||||
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
||||||
AddInCardHdmiLoopPort(number);
|
AddInCardHdmiLoopPort(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcVga")
|
else if (type == "dmcvga")
|
||||||
{
|
{
|
||||||
new DmcVga(number, Chassis);
|
new DmcVga(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "vgaIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Vga);
|
AddInputPortWithDebug(number, "vgaIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Vga);
|
||||||
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
||||||
AddInCardHdmiLoopPort(number);
|
AddInCardHdmiLoopPort(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcVidBnc")
|
else if (type == "dmcvidbnc")
|
||||||
{
|
{
|
||||||
new DmcVidBnc(number, Chassis);
|
new DmcVidBnc(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "componentIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Component);
|
AddInputPortWithDebug(number, "componentIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Component);
|
||||||
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
||||||
AddInCardHdmiLoopPort(number);
|
AddInCardHdmiLoopPort(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcVidRcaA")
|
else if (type == "dmcvidrcaa")
|
||||||
{
|
{
|
||||||
new DmcVidRcaA(number, Chassis);
|
new DmcVidRcaA(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "componentIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Component);
|
AddInputPortWithDebug(number, "componentIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Component);
|
||||||
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
||||||
AddInCardHdmiLoopPort(number);
|
AddInCardHdmiLoopPort(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcVidRcaD")
|
else if (type == "dmcvidrcad")
|
||||||
{
|
{
|
||||||
new DmcVidRcaD(number, Chassis);
|
new DmcVidRcaD(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "componentIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Component);
|
AddInputPortWithDebug(number, "componentIn", eRoutingSignalType.Video, eRoutingPortConnectionType.Component);
|
||||||
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.DigitalAudio);
|
AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.DigitalAudio);
|
||||||
AddInCardHdmiLoopPort(number);
|
AddInCardHdmiLoopPort(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcVid4")
|
else if (type == "dmcvid4")
|
||||||
{
|
{
|
||||||
new DmcVid4(number, Chassis);
|
new DmcVid4(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "compositeIn1", eRoutingSignalType.Video, eRoutingPortConnectionType.Composite);
|
AddInputPortWithDebug(number, "compositeIn1", eRoutingSignalType.Video, eRoutingPortConnectionType.Composite);
|
||||||
|
|
@ -380,35 +440,35 @@ namespace PepperDash.Essentials.DM
|
||||||
AddInputPortWithDebug(number, "compositeIn4", eRoutingSignalType.Video, eRoutingPortConnectionType.Composite);
|
AddInputPortWithDebug(number, "compositeIn4", eRoutingSignalType.Video, eRoutingPortConnectionType.Composite);
|
||||||
AddInCardHdmiLoopPort(number);
|
AddInCardHdmiLoopPort(number);
|
||||||
}
|
}
|
||||||
else if (type == "dmcStr")
|
else if (type == "dmcstr")
|
||||||
{
|
{
|
||||||
new DmcStr(number, Chassis);
|
new DmcStr(number, Chassis);
|
||||||
AddInputPortWithDebug(number, "streamIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Streaming);
|
AddInputPortWithDebug(number, "streamIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Streaming);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddDmInCardPorts(uint number)
|
void AddDmInCardPorts(uint number)
|
||||||
{
|
{
|
||||||
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat);
|
AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddHdmiInCardPorts(uint number, ICec cecPort)
|
void AddHdmiInCardPorts(uint number, ICec cecPort)
|
||||||
{
|
{
|
||||||
AddInputPortWithDebug(number, "hdmiIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, cecPort);
|
AddInputPortWithDebug(number, "hdmiIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, cecPort);
|
||||||
AddInCardHdmiAndAudioLoopPorts(number);
|
AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddInCardHdmiAndAudioLoopPorts(uint number)
|
void AddInCardHdmiAndAudioLoopPorts(uint number)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(number, "hdmiLoopOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, null);
|
||||||
AddOutputPortWithDebug(number, "audioLoopOut", eRoutingSignalType.Audio, eRoutingPortConnectionType.Hdmi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "audioLoopOut", eRoutingSignalType.Audio, eRoutingPortConnectionType.Hdmi, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddInCardHdmiLoopPort(uint number)
|
void AddInCardHdmiLoopPort(uint number)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(number, "hdmiLoopOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, null);
|
AddOutputPortWithDebug(string.Format("inputCard{0}", number), "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -418,66 +478,68 @@ namespace PepperDash.Essentials.DM
|
||||||
/// <param name="number"></param>
|
/// <param name="number"></param>
|
||||||
public void AddOutputCard(string type, uint number)
|
public void AddOutputCard(string type, uint number)
|
||||||
{
|
{
|
||||||
|
type = type.ToLower();
|
||||||
|
|
||||||
Debug.Console(2, this, "Adding output card '{0}', slot {1}", type, number);
|
Debug.Console(2, this, "Adding output card '{0}', slot {1}", type, number);
|
||||||
if (type == "dmc4kHdo")
|
if (type == "dmc4khdo")
|
||||||
{
|
{
|
||||||
var outputCard = new Dmc4kHdoSingle(number, Chassis);
|
var outputCard = new Dmc4kHdoSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
var cecPort2 = outputCard.Card2.HdmiOutput;
|
var cecPort2 = outputCard.Card2.HdmiOutput;
|
||||||
AddDmcHdoPorts(number, cecPort1, cecPort2);
|
AddDmcHdoPorts(number, cecPort1, cecPort2);
|
||||||
}
|
}
|
||||||
else if (type == "dmcHdo")
|
else if (type == "dmchdo")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcHdoSingle(number, Chassis);
|
var outputCard = new DmcHdoSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
var cecPort2 = outputCard.Card2.HdmiOutput;
|
var cecPort2 = outputCard.Card2.HdmiOutput;
|
||||||
AddDmcHdoPorts(number, cecPort1, cecPort2);
|
AddDmcHdoPorts(number, cecPort1, cecPort2);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kCoHd")
|
else if (type == "dmc4kcohd")
|
||||||
{
|
{
|
||||||
var outputCard = new Dmc4kCoHdSingle(number, Chassis);
|
var outputCard = new Dmc4kCoHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddDmcCoPorts(number, cecPort1);
|
AddDmcCoPorts(number, cecPort1);
|
||||||
}
|
}
|
||||||
else if (type == "dmc4kzCoHd")
|
else if (type == "dmc4kzcohd")
|
||||||
{
|
{
|
||||||
var outputCard = new Dmc4kzCoHdSingle(number, Chassis);
|
var outputCard = new Dmc4kzCoHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddDmcCoPorts(number, cecPort1);
|
AddDmcCoPorts(number, cecPort1);
|
||||||
}
|
}
|
||||||
else if (type == "dmcCoHd")
|
else if (type == "dmccohd")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcCoHdSingle(number, Chassis);
|
var outputCard = new DmcCoHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddDmcCoPorts(number, cecPort1);
|
AddDmcCoPorts(number, cecPort1);
|
||||||
}
|
}
|
||||||
else if (type == "dmCatoHd")
|
else if (type == "dmccatohd")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcCatoHdSingle(number, Chassis);
|
var outputCard = new DmcCatoHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddDmcCoPorts(number, cecPort1);
|
AddDmcCoPorts(number, cecPort1);
|
||||||
}
|
}
|
||||||
else if (type == "dmcSoHd")
|
else if (type == "dmcsohd")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcSoHdSingle(number, Chassis);
|
var outputCard = new DmcSoHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 1);
|
||||||
AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 2);
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (type == "dmcS2oHd")
|
else if (type == "dmcs2ohd")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcS2oHdSingle(number, Chassis);
|
var outputCard = new DmcS2oHdSingle(number, Chassis);
|
||||||
var cecPort1 = outputCard.Card1.HdmiOutput;
|
var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 1);
|
||||||
AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 2);
|
||||||
}
|
}
|
||||||
else if (type == "dmcStro")
|
else if (type == "dmcStro")
|
||||||
{
|
{
|
||||||
var outputCard = new DmcStroSingle(number, Chassis);
|
var outputCard = new DmcStroSingle(number, Chassis);
|
||||||
AddOutputPortWithDebug(number, "streamOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Streaming, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "streamOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Streaming, 2 * (number - 1) + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
@ -486,17 +548,17 @@ namespace PepperDash.Essentials.DM
|
||||||
|
|
||||||
void AddDmcHdoPorts(uint number, ICec cecPort1, ICec cecPort2)
|
void AddDmcHdoPorts(uint number, ICec cecPort1, ICec cecPort2)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
AddOutputPortWithDebug(number, "audioOut1", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "audioOut1", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 1);
|
||||||
AddOutputPortWithDebug(number, "hdmiOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 2, cecPort2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 2, cecPort2);
|
||||||
AddOutputPortWithDebug(number, "audioOut2", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "audioOut2", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AddDmcCoPorts(uint number, ICec cecPort1)
|
void AddDmcCoPorts(uint number, ICec cecPort1)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 1);
|
||||||
AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 2);
|
AddOutputPortWithDebug(string.Format("outputCard{0}", number), "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -530,9 +592,9 @@ namespace PepperDash.Essentials.DM
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Adds OutputPort
|
/// Adds OutputPort
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void AddOutputPortWithDebug(uint cardNum, string portName, eRoutingSignalType sigType, eRoutingPortConnectionType portType, object selector)
|
void AddOutputPortWithDebug(string cardName, string portName, eRoutingSignalType sigType, eRoutingPortConnectionType portType, object selector)
|
||||||
{
|
{
|
||||||
var portKey = string.Format("outputCard{0}--{1}", cardNum, portName);
|
var portKey = string.Format("{0}--{1}", cardName, portName);
|
||||||
Debug.Console(2, this, "Adding output port '{0}'", portKey);
|
Debug.Console(2, this, "Adding output port '{0}'", portKey);
|
||||||
OutputPorts.Add(new RoutingOutputPort(portKey, sigType, portType, selector, this));
|
OutputPorts.Add(new RoutingOutputPort(portKey, sigType, portType, selector, this));
|
||||||
}
|
}
|
||||||
|
|
@ -540,9 +602,9 @@ namespace PepperDash.Essentials.DM
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Adds OutputPort and sets Port as ICec object
|
/// Adds OutputPort and sets Port as ICec object
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void AddOutputPortWithDebug(uint cardNum, string portName, eRoutingSignalType sigType, eRoutingPortConnectionType portType, object selector, ICec cecPort)
|
void AddOutputPortWithDebug(string cardName, string portName, eRoutingSignalType sigType, eRoutingPortConnectionType portType, object selector, ICec cecPort)
|
||||||
{
|
{
|
||||||
var portKey = string.Format("outputCard{0}--{1}", cardNum, portName);
|
var portKey = string.Format("outputCard{0}--{1}", cardName, portName);
|
||||||
Debug.Console(2, this, "Adding output port '{0}'", portKey);
|
Debug.Console(2, this, "Adding output port '{0}'", portKey);
|
||||||
var outputPort = new RoutingOutputPort(portKey, sigType, portType, selector, this);
|
var outputPort = new RoutingOutputPort(portKey, sigType, portType, selector, this);
|
||||||
|
|
||||||
|
|
@ -566,35 +628,72 @@ namespace PepperDash.Essentials.DM
|
||||||
//}
|
//}
|
||||||
|
|
||||||
|
|
||||||
void Chassis_DMSystemChange(Switch device, DMSystemEventArgs args) {
|
void Chassis_DMSystemChange(Switch device, DMSystemEventArgs args)
|
||||||
|
{
|
||||||
|
switch (args.EventId)
|
||||||
|
{
|
||||||
|
case DMSystemEventIds.SystemIdEventId:
|
||||||
|
{
|
||||||
|
Debug.Console(2, this, "SystemIdEvent Value: {0}", Chassis.SystemIdFeedback.UShortValue);
|
||||||
|
SystemIdFeebdack.FireUpdate();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case DMSystemEventIds.SystemIdBusyEventId:
|
||||||
|
{
|
||||||
|
Debug.Console(2, this, "SystemIdBusyEvent State: {0}", Chassis.SystemIdBusy.BoolValue);
|
||||||
|
SystemIdBusyFeedback.FireUpdate();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
void Chassis_DMInputChange(Switch device, DMInputEventArgs args)
|
||||||
void Chassis_DMInputChange(Switch device, DMInputEventArgs args) {
|
{
|
||||||
//Debug.Console(2, this, "DMSwitch:{0} Input:{1} Event:{2}'", this.Name, args.Number, args.EventId.ToString());
|
|
||||||
|
|
||||||
switch (args.EventId) {
|
switch (args.EventId) {
|
||||||
case (DMInputEventIds.OnlineFeedbackEventId): {
|
case DMInputEventIds.EndpointOnlineEventId:
|
||||||
Debug.Console(2, this, "DMINput OnlineFeedbackEventId for input: {0}. State: {1}", args.Number, device.Inputs[args.Number].EndpointOnlineFeedback);
|
{
|
||||||
InputEndpointOnlineFeedbacks[args.Number].FireUpdate();
|
Debug.Console(2, this, "DM Input EndpointOnlineEventId for input: {0}. State: {1}", args.Number, device.Inputs[args.Number].EndpointOnlineFeedback);
|
||||||
break;
|
InputEndpointOnlineFeedbacks[args.Number].FireUpdate();
|
||||||
}
|
break;
|
||||||
case (DMInputEventIds.VideoDetectedEventId): {
|
}
|
||||||
Debug.Console(2, this, "DM Input {0} VideoDetectedEventId", args.Number);
|
case DMInputEventIds.OnlineFeedbackEventId:
|
||||||
VideoInputSyncFeedbacks[args.Number].FireUpdate();
|
{
|
||||||
break;
|
Debug.Console(2, this, "DM Input OnlineFeedbackEventId for input: {0}. State: {1}", args.Number, device.Inputs[args.Number].EndpointOnlineFeedback);
|
||||||
}
|
InputEndpointOnlineFeedbacks[args.Number].FireUpdate();
|
||||||
case (DMInputEventIds.InputNameEventId): {
|
break;
|
||||||
Debug.Console(2, this, "DM Input {0} NameFeedbackEventId", args.Number);
|
}
|
||||||
InputNameFeedbacks[args.Number].FireUpdate();
|
case DMInputEventIds.VideoDetectedEventId:
|
||||||
break;
|
{
|
||||||
}
|
Debug.Console(2, this, "DM Input {0} VideoDetectedEventId", args.Number);
|
||||||
|
VideoInputSyncFeedbacks[args.Number].FireUpdate();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case DMInputEventIds.InputNameEventId:
|
||||||
|
{
|
||||||
|
Debug.Console(2, this, "DM Input {0} NameFeedbackEventId", args.Number);
|
||||||
|
InputNameFeedbacks[args.Number].FireUpdate();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case DMInputEventIds.UsbRoutedToEventId:
|
||||||
|
{
|
||||||
|
Debug.Console(2, this, "DM Input {0} UsbRoutedToEventId", args.Number);
|
||||||
|
UsbInputRoutedToFeebacks[args.Number].FireUpdate();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case DMInputEventIds.HdcpCapabilityFeedbackEventId:
|
||||||
|
{
|
||||||
|
Debug.Console(2, this, "DM Input {0} HdcpCapabilityFeedbackEventId", args.Number);
|
||||||
|
InputCardHdcpCapabilityFeedbacks[args.Number].FireUpdate();
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "DMInputChange fired for Input {0} with Unhandled EventId: {1}", args.Number, args.EventId);
|
Debug.Console(2, this, "DMInputChange fired for Input {0} with Unhandled EventId: {1}", args.Number, args.EventId);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void Chassis_DMOutputChange(Switch device, DMOutputEventArgs args)
|
void Chassis_DMOutputChange(Switch device, DMOutputEventArgs args)
|
||||||
|
|
@ -613,13 +712,13 @@ namespace PepperDash.Essentials.DM
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DMOutputEventIds.OnlineFeedbackEventId:
|
case DMOutputEventIds.EndpointOnlineEventId:
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "Output {0} DMOutputEventIds.OnlineFeedbackEventId fired. State: {1}", args.Number, Chassis.Outputs[output].EndpointOnlineFeedback);
|
Debug.Console(2, this, "Output {0} DMOutputEventIds.EndpointOnlineEventId fired. State: {1}", args.Number, Chassis.Outputs[output].EndpointOnlineFeedback);
|
||||||
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DMInputEventIds.OnlineFeedbackEventId:
|
case DMOutputEventIds.OnlineFeedbackEventId:
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "Output {0} DMInputEventIds.OnlineFeedbackEventId fired. State: {1}", args.Number, Chassis.Outputs[output].EndpointOnlineFeedback);
|
Debug.Console(2, this, "Output {0} DMInputEventIds.OnlineFeedbackEventId fired. State: {1}", args.Number, Chassis.Outputs[output].EndpointOnlineFeedback);
|
||||||
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
OutputEndpointOnlineFeedbacks[output].FireUpdate();
|
||||||
|
|
@ -660,6 +759,12 @@ namespace PepperDash.Essentials.DM
|
||||||
OutputNameFeedbacks[output].FireUpdate();
|
OutputNameFeedbacks[output].FireUpdate();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case DMOutputEventIds.UsbRoutedToEventId:
|
||||||
|
{
|
||||||
|
Debug.Console(2, this, "DM Output {0} UsbRoutedToEventId", args.Number);
|
||||||
|
UsbOutputRoutedToFeebacks[args.Number].FireUpdate();
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
Debug.Console(2, this, "DMOutputChange fired for Output {0} with Unhandled EventId: {1}", args.Number, args.EventId);
|
Debug.Console(2, this, "DMOutputChange fired for Output {0} with Unhandled EventId: {1}", args.Number, args.EventId);
|
||||||
|
|
@ -690,7 +795,7 @@ namespace PepperDash.Essentials.DM
|
||||||
if (IsOnline.BoolValue)
|
if (IsOnline.BoolValue)
|
||||||
{
|
{
|
||||||
Chassis.EnableAudioBreakaway.BoolValue = true;
|
Chassis.EnableAudioBreakaway.BoolValue = true;
|
||||||
//Chassis.EnableUSBBreakaway.BoolValue = true;
|
Chassis.EnableUSBBreakaway.BoolValue = true;
|
||||||
|
|
||||||
if (InputNames != null)
|
if (InputNames != null)
|
||||||
foreach (var kvp in InputNames)
|
foreach (var kvp in InputNames)
|
||||||
|
|
@ -726,19 +831,34 @@ namespace PepperDash.Essentials.DM
|
||||||
}
|
}
|
||||||
|
|
||||||
Card.DMICard inCard = input == 0 ? null : Chassis.Inputs[input];
|
Card.DMICard inCard = input == 0 ? null : Chassis.Inputs[input];
|
||||||
|
Card.DMOCard outCard = input == 0 ? null : Chassis.Outputs[output];
|
||||||
|
|
||||||
// NOTE THAT THESE ARE NOTS - TO CATCH THE AudioVideo TYPE
|
// NOTE THAT BITWISE COMPARISONS - TO CATCH ALL ROUTING TYPES
|
||||||
if (sigType != eRoutingSignalType.Audio)
|
if ((sigType | eRoutingSignalType.Video) == eRoutingSignalType.Video)
|
||||||
{
|
{
|
||||||
Chassis.VideoEnter.BoolValue = true;
|
Chassis.VideoEnter.BoolValue = true;
|
||||||
Chassis.Outputs[output].VideoOut = inCard;
|
Chassis.Outputs[output].VideoOut = inCard;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sigType != eRoutingSignalType.Video)
|
if ((sigType | eRoutingSignalType.Audio) == eRoutingSignalType.Audio)
|
||||||
{
|
{
|
||||||
Chassis.AudioEnter.BoolValue = true;
|
Chassis.AudioEnter.BoolValue = true;
|
||||||
Chassis.Outputs[output].AudioOut = inCard;
|
Chassis.Outputs[output].AudioOut = inCard;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((sigType | eRoutingSignalType.UsbOutput) == eRoutingSignalType.UsbOutput)
|
||||||
|
{
|
||||||
|
Chassis.USBEnter.BoolValue = true;
|
||||||
|
if (Chassis.Outputs[output] != null)
|
||||||
|
Chassis.Outputs[output].USBRoutedTo = inCard;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((sigType | eRoutingSignalType.UsbInput) == eRoutingSignalType.UsbInput)
|
||||||
|
{
|
||||||
|
Chassis.USBEnter.BoolValue = true;
|
||||||
|
if(Chassis.Inputs[input] != null)
|
||||||
|
Chassis.Inputs[input].USBRoutedTo = outCard;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,7 @@ namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
InputCard = inputCard as Card.Dmps3HdmiVgaInput;
|
InputCard = inputCard as Card.Dmps3HdmiVgaInput;
|
||||||
|
|
||||||
HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi,
|
HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi,
|
||||||
eDmps3InputVideoSource.Hdmi, this, VideoStatusHelper.GetHdmiInputStatusFuncs(InputCard.HdmiInputPort));
|
eDmps3InputVideoSource.Hdmi, this, VideoStatusHelper.GetHdmiInputStatusFuncs(InputCard.HdmiInputPort));
|
||||||
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
||||||
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eDmps3InputVideoSource.Vga, this,
|
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eDmps3InputVideoSource.Vga, this,
|
||||||
|
|
@ -140,7 +140,7 @@ namespace PepperDash.Essentials.DM
|
||||||
};
|
};
|
||||||
|
|
||||||
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.None, eDmps3InputVideoSource.Auto, this, combinedFuncs);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, eDmps3InputVideoSource.Auto, this, combinedFuncs);
|
||||||
|
|
||||||
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput", () => ActualVideoInput.ToString());
|
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput", () => ActualVideoInput.ToString());
|
||||||
|
|
||||||
|
|
@ -164,7 +164,7 @@ namespace PepperDash.Essentials.DM
|
||||||
// Set Ports for CEC
|
// Set Ports for CEC
|
||||||
HdmiIn.Port = InputCard.HdmiInputPort;
|
HdmiIn.Port = InputCard.HdmiInputPort;
|
||||||
|
|
||||||
VirtualDmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo,
|
VirtualDmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.None, null, this);
|
eRoutingPortConnectionType.None, null, this);
|
||||||
|
|
||||||
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
||||||
|
|
@ -316,7 +316,7 @@ namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
InputCard = inputCard;
|
InputCard = inputCard;
|
||||||
|
|
||||||
HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi,
|
HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi,
|
||||||
eDmps3InputVideoSource.Hdmi, this, VideoStatusHelper.GetHdmiInputStatusFuncs(InputCard.HdmiInputPort));
|
eDmps3InputVideoSource.Hdmi, this, VideoStatusHelper.GetHdmiInputStatusFuncs(InputCard.HdmiInputPort));
|
||||||
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
||||||
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eDmps3InputVideoSource.Vga, this,
|
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eDmps3InputVideoSource.Vga, this,
|
||||||
|
|
@ -372,7 +372,7 @@ namespace PepperDash.Essentials.DM
|
||||||
};
|
};
|
||||||
|
|
||||||
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
||||||
|
|
||||||
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput", () => ActualVideoInput.ToString());
|
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput", () => ActualVideoInput.ToString());
|
||||||
|
|
||||||
|
|
@ -396,7 +396,7 @@ namespace PepperDash.Essentials.DM
|
||||||
// Set Ports for CEC
|
// Set Ports for CEC
|
||||||
HdmiIn.Port = InputCard.HdmiInputPort;
|
HdmiIn.Port = InputCard.HdmiInputPort;
|
||||||
|
|
||||||
VirtualDmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo,
|
VirtualDmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.None, null, this);
|
eRoutingPortConnectionType.None, null, this);
|
||||||
|
|
||||||
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
||||||
|
|
|
||||||
|
|
@ -259,7 +259,7 @@ namespace PepperDash.Essentials.DM
|
||||||
|
|
||||||
var cecPort = hdmiInputCard.HdmiInputPort;
|
var cecPort = hdmiInputCard.HdmiInputPort;
|
||||||
|
|
||||||
AddInputPortWithDebug(number, string.Format("HdmiIn{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, cecPort);
|
AddInputPortWithDebug(number, string.Format("HdmiIn{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, cecPort);
|
||||||
}
|
}
|
||||||
else if (inputCard is Card.Dmps3HdmiInput)
|
else if (inputCard is Card.Dmps3HdmiInput)
|
||||||
{
|
{
|
||||||
|
|
@ -267,7 +267,7 @@ namespace PepperDash.Essentials.DM
|
||||||
|
|
||||||
var cecPort = hdmiInputCard.HdmiInputPort;
|
var cecPort = hdmiInputCard.HdmiInputPort;
|
||||||
|
|
||||||
AddInputPortWithDebug(number, string.Format("HdmiIn{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, cecPort);
|
AddInputPortWithDebug(number, string.Format("HdmiIn{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, cecPort);
|
||||||
AddInputPortWithDebug(number, string.Format("HudioIn{1}", number), eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
AddInputPortWithDebug(number, string.Format("HudioIn{1}", number), eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
||||||
}
|
}
|
||||||
else if (inputCard is Card.Dmps3HdmiVgaInput)
|
else if (inputCard is Card.Dmps3HdmiVgaInput)
|
||||||
|
|
@ -281,7 +281,7 @@ namespace PepperDash.Essentials.DM
|
||||||
|
|
||||||
DeviceManager.AddDevice(inputCardController);
|
DeviceManager.AddDevice(inputCardController);
|
||||||
|
|
||||||
AddInputPortWithDebug(number, string.Format("HdmiVgaIn{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.BackplaneOnly);
|
AddInputPortWithDebug(number, string.Format("HdmiVgaIn{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.BackplaneOnly);
|
||||||
}
|
}
|
||||||
else if (inputCard is Card.Dmps3HdmiVgaBncInput)
|
else if (inputCard is Card.Dmps3HdmiVgaBncInput)
|
||||||
{
|
{
|
||||||
|
|
@ -294,7 +294,7 @@ namespace PepperDash.Essentials.DM
|
||||||
|
|
||||||
DeviceManager.AddDevice(inputCardController);
|
DeviceManager.AddDevice(inputCardController);
|
||||||
|
|
||||||
AddInputPortWithDebug(number, string.Format("HdmiVgaBncIn{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.BackplaneOnly);
|
AddInputPortWithDebug(number, string.Format("HdmiVgaBncIn{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.BackplaneOnly);
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (inputCard is Card.Dmps3DmInput)
|
else if (inputCard is Card.Dmps3DmInput)
|
||||||
|
|
@ -303,13 +303,13 @@ namespace PepperDash.Essentials.DM
|
||||||
|
|
||||||
var cecPort = hdmiInputCard.DmInputPort;
|
var cecPort = hdmiInputCard.DmInputPort;
|
||||||
|
|
||||||
AddInputPortWithDebug(number, string.Format("DmIn{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, cecPort);
|
AddInputPortWithDebug(number, string.Format("DmIn{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, cecPort);
|
||||||
}
|
}
|
||||||
else if (inputCard is Card.Dmps3AirMediaInput)
|
else if (inputCard is Card.Dmps3AirMediaInput)
|
||||||
{
|
{
|
||||||
var airMediaInputCard = inputCard as Card.Dmps3AirMediaInput;
|
var airMediaInputCard = inputCard as Card.Dmps3AirMediaInput;
|
||||||
|
|
||||||
AddInputPortWithDebug(number, string.Format("AirMediaIn{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Streaming);
|
AddInputPortWithDebug(number, string.Format("AirMediaIn{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Streaming);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -440,7 +440,7 @@ namespace PepperDash.Essentials.DM
|
||||||
/// <param name="cecPort"></param>
|
/// <param name="cecPort"></param>
|
||||||
void AddHdmiOutputPort(uint number, ICec cecPort)
|
void AddHdmiOutputPort(uint number, ICec cecPort)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(number, string.Format("hdmiOut{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, number, cecPort);
|
AddOutputPortWithDebug(number, string.Format("hdmiOut{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, number, cecPort);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -449,7 +449,7 @@ namespace PepperDash.Essentials.DM
|
||||||
/// <param name="number"></param>
|
/// <param name="number"></param>
|
||||||
void AddDmOutputPort(uint number)
|
void AddDmOutputPort(uint number)
|
||||||
{
|
{
|
||||||
AddOutputPortWithDebug(number, string.Format("dmOut{0}", number), eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, number);
|
AddOutputPortWithDebug(number, string.Format("dmOut{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, number);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -611,25 +611,35 @@ namespace PepperDash.Essentials.DM
|
||||||
}
|
}
|
||||||
|
|
||||||
DMInput inCard = input == 0 ? null : Dmps.SwitcherInputs[input] as DMInput;
|
DMInput inCard = input == 0 ? null : Dmps.SwitcherInputs[input] as DMInput;
|
||||||
|
Card.Dmps3OutputBase outCard = output == 0 ? null : Dmps.SwitcherOutputs[output] as Card.Dmps3OutputBase;
|
||||||
|
|
||||||
if (inCard != null)
|
if (inCard != null)
|
||||||
{
|
{
|
||||||
// NOTE THAT THESE ARE NOTS - TO CATCH THE AudioVideo TYPE
|
// NOTE THAT BITWISE COMPARISONS - TO CATCH ALL ROUTING TYPES
|
||||||
if (sigType != eRoutingSignalType.Audio)
|
if ((sigType | eRoutingSignalType.Video) == eRoutingSignalType.Video)
|
||||||
{
|
{
|
||||||
var outputCard = Dmps.SwitcherOutputs[output] as Card.Dmps3OutputBase;
|
|
||||||
|
|
||||||
//SystemControl.VideoEnter.BoolValue = true;
|
//SystemControl.VideoEnter.BoolValue = true;
|
||||||
if (outputCard != null && outputCard.VideoOut != null)
|
if (outCard != null && outCard.VideoOut != null)
|
||||||
outputCard.VideoOut = inCard;
|
outCard.VideoOut = inCard;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sigType != eRoutingSignalType.Video)
|
if ((sigType | eRoutingSignalType.Audio) == eRoutingSignalType.Audio)
|
||||||
{
|
{
|
||||||
var outputCard = Dmps.SwitcherOutputs[output] as Card.Dmps3OutputBase;
|
if (outCard != null && outCard.AudioOut != null)
|
||||||
if (outputCard != null && outputCard.AudioOut != null)
|
outCard.AudioOut = inCard;
|
||||||
outputCard.AudioOut = inCard;
|
}
|
||||||
|
|
||||||
|
if ((sigType | eRoutingSignalType.UsbOutput) == eRoutingSignalType.UsbOutput)
|
||||||
|
{
|
||||||
|
if (outCard != null && outCard.USBRoutedTo != null)
|
||||||
|
outCard.USBRoutedTo = inCard;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((sigType | eRoutingSignalType.UsbInput) == eRoutingSignalType.UsbInput)
|
||||||
|
{
|
||||||
|
if (inCard != null && inCard.USBRoutedTo != null)
|
||||||
|
inCard.USBRoutedTo = outCard;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
||||||
|
|
@ -35,11 +35,11 @@ namespace PepperDash.Essentials.DM.Chassis
|
||||||
InputPorts = new RoutingPortCollection<RoutingInputPort>();
|
InputPorts = new RoutingPortCollection<RoutingInputPort>();
|
||||||
for (uint i = 1; i <= 4; i++)
|
for (uint i = 1; i <= 4; i++)
|
||||||
{
|
{
|
||||||
InputPorts.Add(new RoutingInputPort("hdmiIn" + i, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort("hdmiIn" + i, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, i, this));
|
eRoutingPortConnectionType.Hdmi, i, this));
|
||||||
}
|
}
|
||||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
||||||
OutputPorts.Add(new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
OutputPorts.Add(new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this));
|
eRoutingPortConnectionType.Hdmi, null, this));
|
||||||
|
|
||||||
// physical settings
|
// physical settings
|
||||||
|
|
|
||||||
|
|
@ -32,9 +32,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HDBaseTSink = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HDBaseTSink = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
// Set Ports for CEC
|
// Set Ports for CEC
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
// Set Ports for CEC
|
// Set Ports for CEC
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
||||||
|
|
|
||||||
|
|
@ -42,9 +42,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
BalancedAudioOut = new RoutingOutputPort(DmPortName.BalancedAudioOut, eRoutingSignalType.Audio,
|
BalancedAudioOut = new RoutingOutputPort(DmPortName.BalancedAudioOut, eRoutingSignalType.Audio,
|
||||||
eRoutingPortConnectionType.LineAudio, null, this);
|
eRoutingPortConnectionType.LineAudio, null, this);
|
||||||
|
|
|
||||||
|
|
@ -33,9 +33,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
// Set Ports for CEC
|
// Set Ports for CEC
|
||||||
|
|
|
||||||
|
|
@ -42,9 +42,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
BalancedAudioOut = new RoutingOutputPort(DmPortName.BalancedAudioOut, eRoutingSignalType.Audio,
|
BalancedAudioOut = new RoutingOutputPort(DmPortName.BalancedAudioOut, eRoutingSignalType.Audio,
|
||||||
eRoutingPortConnectionType.LineAudio, null, this);
|
eRoutingPortConnectionType.LineAudio, null, this);
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
EdidManufacturerFeedback = new StringFeedback(() => Rmc.HdmiOutput.ConnectedDevice.Manufacturer.StringValue);
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ namespace PepperDash.Essentials.DM
|
||||||
: base(key, name, rmc)
|
: base(key, name, rmc)
|
||||||
{
|
{
|
||||||
Rmc = rmc;
|
Rmc = rmc;
|
||||||
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.AudioVideo,
|
DmIn = new RoutingInputPort(DmPortName.DmIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, 0, this);
|
eRoutingPortConnectionType.DmCat, 0, this);
|
||||||
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(DmPortName.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
// Set Ports for CEC
|
// Set Ports for CEC
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,7 @@ namespace PepperDash.Essentials.DM
|
||||||
Tx = tx;
|
Tx = tx;
|
||||||
|
|
||||||
HdmiInput = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn,
|
HdmiInput = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, DmTx200Base.eSourceSelection.Digital, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, DmTx200Base.eSourceSelection.Digital, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInput));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInput));
|
||||||
VgaInput = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
VgaInput = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
||||||
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, DmTx200Base.eSourceSelection.Analog, this,
|
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, DmTx200Base.eSourceSelection.Analog, this,
|
||||||
|
|
@ -155,9 +155,9 @@ namespace PepperDash.Essentials.DM
|
||||||
};
|
};
|
||||||
|
|
||||||
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
||||||
|
|
||||||
DmOutput = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, null, this);
|
DmOutput = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, null, this);
|
||||||
|
|
||||||
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
||||||
AnyVideoInput.VideoStatus.HasVideoStatusFeedback, AnyVideoInput.VideoStatus.HdcpActiveFeedback,
|
AnyVideoInput.VideoStatus.HasVideoStatusFeedback, AnyVideoInput.VideoStatus.HdcpActiveFeedback,
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,7 @@ namespace PepperDash.Essentials.DM
|
||||||
Tx = tx;
|
Tx = tx;
|
||||||
|
|
||||||
HdmiInput = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn,
|
HdmiInput = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, DmTx200Base.eSourceSelection.Digital, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, DmTx200Base.eSourceSelection.Digital, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInput));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInput));
|
||||||
VgaInput = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
VgaInput = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
||||||
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, DmTx200Base.eSourceSelection.Analog, this,
|
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, DmTx200Base.eSourceSelection.Analog, this,
|
||||||
|
|
@ -156,10 +156,10 @@ namespace PepperDash.Essentials.DM
|
||||||
};
|
};
|
||||||
|
|
||||||
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
||||||
|
|
||||||
DmOutput = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, null, this);
|
DmOutput = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, null, this);
|
||||||
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
||||||
|
|
|
||||||
|
|
@ -92,10 +92,10 @@ namespace PepperDash.Essentials.DM
|
||||||
Tx = tx;
|
Tx = tx;
|
||||||
|
|
||||||
HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn,
|
HdmiIn = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.HDMI, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.HDMI, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInput));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInput));
|
||||||
DisplayPortIn = new RoutingInputPortWithVideoStatuses(DmPortName.DisplayPortIn,
|
DisplayPortIn = new RoutingInputPortWithVideoStatuses(DmPortName.DisplayPortIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.DisplayPort, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.DisplayPort, this,
|
||||||
VideoStatusHelper.GetDisplayPortInputStatusFuncs(tx.DisplayPortInput));
|
VideoStatusHelper.GetDisplayPortInputStatusFuncs(tx.DisplayPortInput));
|
||||||
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
||||||
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eVst.VGA, this,
|
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eVst.VGA, this,
|
||||||
|
|
@ -168,8 +168,10 @@ namespace PepperDash.Essentials.DM
|
||||||
&& tx.CvbsInput.SyncDetectedFeedback.BoolValue)
|
&& tx.CvbsInput.SyncDetectedFeedback.BoolValue)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
||||||
|
|
||||||
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo,
|
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, null, this);
|
eRoutingPortConnectionType.DmCat, null, this);
|
||||||
|
|
||||||
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
AddToFeedbackList(ActiveVideoInputFeedback, VideoSourceNumericFeedback, AudioSourceNumericFeedback,
|
||||||
|
|
|
||||||
|
|
@ -67,9 +67,9 @@ namespace PepperDash.Essentials.DM
|
||||||
Tx = tx;
|
Tx = tx;
|
||||||
|
|
||||||
HdmiIn = new RoutingInputPort(DmPortName.HdmiIn1,
|
HdmiIn = new RoutingInputPort(DmPortName.HdmiIn1,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this);
|
||||||
|
|
||||||
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo,
|
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, null, this);
|
eRoutingPortConnectionType.DmCat, null, this);
|
||||||
|
|
||||||
// Set Ports for CEC
|
// Set Ports for CEC
|
||||||
|
|
|
||||||
|
|
@ -82,10 +82,10 @@ namespace PepperDash.Essentials.DM
|
||||||
Tx = tx;
|
Tx = tx;
|
||||||
|
|
||||||
HdmiIn1 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn1,
|
HdmiIn1 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn1,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[1]));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[1]));
|
||||||
HdmiIn2 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn2,
|
HdmiIn2 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn2,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.Hdmi2, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.Hdmi2, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[2]));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[2]));
|
||||||
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput",
|
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput",
|
||||||
() => ActualActiveVideoInput.ToString());
|
() => ActualActiveVideoInput.ToString());
|
||||||
|
|
@ -151,11 +151,11 @@ namespace PepperDash.Essentials.DM
|
||||||
};
|
};
|
||||||
|
|
||||||
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
||||||
|
|
||||||
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo,
|
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, null, this);
|
eRoutingPortConnectionType.DmCat, null, this);
|
||||||
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -86,10 +86,10 @@ namespace PepperDash.Essentials.DM
|
||||||
Tx = tx;
|
Tx = tx;
|
||||||
|
|
||||||
HdmiIn1 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn1,
|
HdmiIn1 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn1,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[1]));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[1]));
|
||||||
HdmiIn2 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn2,
|
HdmiIn2 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn2,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.Hdmi2, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.Hdmi2, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[2]));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[2]));
|
||||||
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
VgaIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
||||||
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eVst.Vga, this,
|
eRoutingSignalType.Video, eRoutingPortConnectionType.Vga, eVst.Vga, this,
|
||||||
|
|
@ -161,11 +161,11 @@ namespace PepperDash.Essentials.DM
|
||||||
};
|
};
|
||||||
|
|
||||||
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
||||||
|
|
||||||
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo,
|
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, null, this);
|
eRoutingPortConnectionType.DmCat, null, this);
|
||||||
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -86,13 +86,13 @@ namespace PepperDash.Essentials.DM
|
||||||
Tx = tx;
|
Tx = tx;
|
||||||
|
|
||||||
HdmiIn1 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn1,
|
HdmiIn1 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn1,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.Hdmi1, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[1]));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[1]));
|
||||||
HdmiIn2 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn2,
|
HdmiIn2 = new RoutingInputPortWithVideoStatuses(DmPortName.HdmiIn2,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, eVst.Hdmi2, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, eVst.Hdmi2, this,
|
||||||
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[2]));
|
VideoStatusHelper.GetHdmiInputStatusFuncs(tx.HdmiInputs[2]));
|
||||||
DisplayPortIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
DisplayPortIn = new RoutingInputPortWithVideoStatuses(DmPortName.VgaIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DisplayPort, eVst.DisplayPort, this,
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DisplayPort, eVst.DisplayPort, this,
|
||||||
VideoStatusHelper.GetDisplayPortInputStatusFuncs(tx.DisplayPortInput));
|
VideoStatusHelper.GetDisplayPortInputStatusFuncs(tx.DisplayPortInput));
|
||||||
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput",
|
ActiveVideoInputFeedback = new StringFeedback("ActiveVideoInput",
|
||||||
() => ActualActiveVideoInput.ToString());
|
() => ActualActiveVideoInput.ToString());
|
||||||
|
|
@ -161,11 +161,11 @@ namespace PepperDash.Essentials.DM
|
||||||
};
|
};
|
||||||
|
|
||||||
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
AnyVideoInput = new RoutingInputPortWithVideoStatuses(DmPortName.AnyVideoIn,
|
||||||
eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.None, 0, this, combinedFuncs);
|
||||||
|
|
||||||
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.AudioVideo,
|
DmOut = new RoutingOutputPort(DmPortName.DmOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DmCat, null, this);
|
eRoutingPortConnectionType.DmCat, null, this);
|
||||||
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.AudioVideo,
|
HdmiLoopOut = new RoutingOutputPort(DmPortName.HdmiLoopOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -207,27 +207,27 @@ namespace PepperDash.Essentials.DM
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
ExecuteSwitch(eVst.Auto, null, eRoutingSignalType.AudioVideo);
|
ExecuteSwitch(eVst.Auto, null, eRoutingSignalType.Audio | eRoutingSignalType.Video);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 1:
|
case 1:
|
||||||
{
|
{
|
||||||
ExecuteSwitch(HdmiIn1.Selector, null, eRoutingSignalType.AudioVideo);
|
ExecuteSwitch(HdmiIn1.Selector, null, eRoutingSignalType.Audio | eRoutingSignalType.Video);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 2:
|
case 2:
|
||||||
{
|
{
|
||||||
ExecuteSwitch(HdmiIn2.Selector, null, eRoutingSignalType.AudioVideo);
|
ExecuteSwitch(HdmiIn2.Selector, null, eRoutingSignalType.Audio | eRoutingSignalType.Video);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 3:
|
case 3:
|
||||||
{
|
{
|
||||||
ExecuteSwitch(DisplayPortIn.Selector, null, eRoutingSignalType.AudioVideo);
|
ExecuteSwitch(DisplayPortIn.Selector, null, eRoutingSignalType.Audio | eRoutingSignalType.Video);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 4:
|
case 4:
|
||||||
{
|
{
|
||||||
ExecuteSwitch(eVst.AllDisabled, null, eRoutingSignalType.AudioVideo);
|
ExecuteSwitch(eVst.AllDisabled, null, eRoutingSignalType.Audio | eRoutingSignalType.Video);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,7 @@ namespace PepperDash.Essentials.DM
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "[{0}] WARNING: Cannot create DM-TX device: {1}", key, e.Message);
|
Debug.Console(0, "[{0}] WARNING: Cannot create DM-TX device: {1}", key, e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -132,7 +132,7 @@ namespace PepperDash.Essentials.DM
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Debug.Console(0, "[{0}] WARNING: Cannot create DM-TX device: {1}", key, e.Message);
|
Debug.Console(0, "[{0}] WARNING: Cannot create DM-TX device: {1}", key, e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,6 @@
|
||||||
<Compile Include="Cards REMOVE\DmInputCardBase.cs" />
|
<Compile Include="Cards REMOVE\DmInputCardBase.cs" />
|
||||||
<Compile Include="Chassis\DmCardAudioOutput.cs" />
|
<Compile Include="Chassis\DmCardAudioOutput.cs" />
|
||||||
<Compile Include="Chassis\DmChassisController.cs" />
|
<Compile Include="Chassis\DmChassisController.cs" />
|
||||||
<Compile Include="Chassis\DmpsAudioOutputController.cs" />
|
|
||||||
<Compile Include="Chassis\DmpsInternalVirtualDmTxController.cs" />
|
<Compile Include="Chassis\DmpsInternalVirtualDmTxController.cs" />
|
||||||
<Compile Include="Chassis\DmpsRoutingController.cs" />
|
<Compile Include="Chassis\DmpsRoutingController.cs" />
|
||||||
<Compile Include="Chassis\HdMdNxM4kEController.cs" />
|
<Compile Include="Chassis\HdMdNxM4kEController.cs" />
|
||||||
|
|
|
||||||
|
|
@ -326,38 +326,38 @@
|
||||||
// else if (type == "dmcS")
|
// else if (type == "dmcS")
|
||||||
// {
|
// {
|
||||||
// new DmcS(number, Chassis);
|
// new DmcS(number, Chassis);
|
||||||
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber);
|
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
// else if (type == "dmcSDsp")
|
// else if (type == "dmcSDsp")
|
||||||
// {
|
// {
|
||||||
// new DmcSDsp(number, Chassis);
|
// new DmcSDsp(number, Chassis);
|
||||||
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber);
|
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
// else if (type == "dmcS2")
|
// else if (type == "dmcS2")
|
||||||
// {
|
// {
|
||||||
// new DmcS2(number, Chassis);
|
// new DmcS2(number, Chassis);
|
||||||
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber);
|
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
// else if (type == "dmcS2Dsp")
|
// else if (type == "dmcS2Dsp")
|
||||||
// {
|
// {
|
||||||
// new DmcS2Dsp(number, Chassis);
|
// new DmcS2Dsp(number, Chassis);
|
||||||
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber);
|
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
// else if (type == "dmcSdi")
|
// else if (type == "dmcSdi")
|
||||||
// {
|
// {
|
||||||
// new DmcSdi(number, Chassis);
|
// new DmcSdi(number, Chassis);
|
||||||
// AddInputPortWithDebug(number, "sdiIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Sdi);
|
// AddInputPortWithDebug(number, "sdiIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Sdi);
|
||||||
// AddOutputPortWithDebug(number, "sdiOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Sdi, null);
|
// AddOutputPortWithDebug(number, "sdiOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Sdi, null);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
// else if (type == "dmcDvi")
|
// else if (type == "dmcDvi")
|
||||||
// {
|
// {
|
||||||
// new DmcDvi(number, Chassis);
|
// new DmcDvi(number, Chassis);
|
||||||
// AddInputPortWithDebug(number, "dviIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Dvi);
|
// AddInputPortWithDebug(number, "dviIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Dvi);
|
||||||
// AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
// AddInputPortWithDebug(number, "audioIn", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio);
|
||||||
// AddInCardHdmiLoopPort(number);
|
// AddInCardHdmiLoopPort(number);
|
||||||
// }
|
// }
|
||||||
|
|
@ -401,32 +401,32 @@
|
||||||
// else if (type == "dmcStr")
|
// else if (type == "dmcStr")
|
||||||
// {
|
// {
|
||||||
// new DmcStr(number, Chassis);
|
// new DmcStr(number, Chassis);
|
||||||
// AddInputPortWithDebug(number, "streamIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Streaming);
|
// AddInputPortWithDebug(number, "streamIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Streaming);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// void AddDmInCardPorts(uint number)
|
// void AddDmInCardPorts(uint number)
|
||||||
// {
|
// {
|
||||||
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat);
|
// AddInputPortWithDebug(number, "dmIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// void AddHdmiInCardPorts(uint number, ICec cecPort)
|
// void AddHdmiInCardPorts(uint number, ICec cecPort)
|
||||||
// {
|
// {
|
||||||
// AddInputPortWithDebug(number, "hdmiIn", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, cecPort);
|
// AddInputPortWithDebug(number, "hdmiIn", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, cecPort);
|
||||||
// AddInCardHdmiAndAudioLoopPorts(number);
|
// AddInCardHdmiAndAudioLoopPorts(number);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// void AddInCardHdmiAndAudioLoopPorts(uint number)
|
// void AddInCardHdmiAndAudioLoopPorts(uint number)
|
||||||
// {
|
// {
|
||||||
// AddOutputPortWithDebug(number, "hdmiLoopOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, null);
|
// AddOutputPortWithDebug(number, "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, null);
|
||||||
// AddOutputPortWithDebug(number, "audioLoopOut", eRoutingSignalType.Audio, eRoutingPortConnectionType.Hdmi, null);
|
// AddOutputPortWithDebug(number, "audioLoopOut", eRoutingSignalType.Audio, eRoutingPortConnectionType.Hdmi, null);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// void AddInCardHdmiLoopPort(uint number)
|
// void AddInCardHdmiLoopPort(uint number)
|
||||||
// {
|
// {
|
||||||
// AddOutputPortWithDebug(number, "hdmiLoopOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, null);
|
// AddOutputPortWithDebug(number, "hdmiLoopOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, null);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// /// <summary>
|
// /// <summary>
|
||||||
|
|
@ -479,23 +479,23 @@
|
||||||
// {
|
// {
|
||||||
// var outputCard = new DmcSoHdSingle(number, Chassis);
|
// var outputCard = new DmcSoHdSingle(number, Chassis);
|
||||||
// var cecPort1 = outputCard.Card1.HdmiOutput;
|
// var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
// AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 1);
|
// AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 1);
|
||||||
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
// AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 2);
|
// AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmMmFiber, 2 * (number - 1) + 2);
|
||||||
|
|
||||||
// }
|
// }
|
||||||
// else if (type == "dmcS2oHd")
|
// else if (type == "dmcS2oHd")
|
||||||
// {
|
// {
|
||||||
// var outputCard = new DmcS2oHdSingle(number, Chassis);
|
// var outputCard = new DmcS2oHdSingle(number, Chassis);
|
||||||
// var cecPort1 = outputCard.Card1.HdmiOutput;
|
// var cecPort1 = outputCard.Card1.HdmiOutput;
|
||||||
// AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 1);
|
// AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 1);
|
||||||
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
// AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 2);
|
// AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmSmFiber, 2 * (number - 1) + 2);
|
||||||
// }
|
// }
|
||||||
// else if (type == "dmcStro")
|
// else if (type == "dmcStro")
|
||||||
// {
|
// {
|
||||||
// var outputCard = new DmcStroSingle(number, Chassis);
|
// var outputCard = new DmcStroSingle(number, Chassis);
|
||||||
// AddOutputPortWithDebug(number, "streamOut", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Streaming, 2 * (number - 1) + 1);
|
// AddOutputPortWithDebug(number, "streamOut", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Streaming, 2 * (number - 1) + 1);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// else
|
// else
|
||||||
|
|
@ -504,17 +504,17 @@
|
||||||
|
|
||||||
// void AddDmcHdoPorts(uint number, ICec cecPort1, ICec cecPort2)
|
// void AddDmcHdoPorts(uint number, ICec cecPort1, ICec cecPort2)
|
||||||
// {
|
// {
|
||||||
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
// AddOutputPortWithDebug(number, "audioOut1", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 1);
|
// AddOutputPortWithDebug(number, "audioOut1", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 1);
|
||||||
// AddOutputPortWithDebug(number, "hdmiOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 2, cecPort2);
|
// AddOutputPortWithDebug(number, "hdmiOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 2, cecPort2);
|
||||||
// AddOutputPortWithDebug(number, "audioOut2", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 2);
|
// AddOutputPortWithDebug(number, "audioOut2", eRoutingSignalType.Audio, eRoutingPortConnectionType.LineAudio, 2 * (number - 1) + 2);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// void AddDmcCoPorts(uint number, ICec cecPort1)
|
// void AddDmcCoPorts(uint number, ICec cecPort1)
|
||||||
// {
|
// {
|
||||||
// AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 1);
|
// AddOutputPortWithDebug(number, "dmOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 1);
|
||||||
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
// AddOutputPortWithDebug(number, "hdmiOut1", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2 * (number - 1) + 1, cecPort1);
|
||||||
// AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 2);
|
// AddOutputPortWithDebug(number, "dmOut2", eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.DmCat, 2 * (number - 1) + 2);
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ namespace PepperDash.Essentials.Devices.Common
|
||||||
|
|
||||||
PowerIsOnFeedback = new BoolFeedback(() => _PowerIsOn);
|
PowerIsOnFeedback = new BoolFeedback(() => _PowerIsOn);
|
||||||
|
|
||||||
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
AnyAudioOut = new RoutingOutputPort(RoutingPortNames.AnyAudioOut, eRoutingSignalType.Audio,
|
AnyAudioOut = new RoutingOutputPort(RoutingPortNames.AnyAudioOut, eRoutingSignalType.Audio,
|
||||||
eRoutingPortConnectionType.DigitalAudio, null, this);
|
eRoutingPortConnectionType.DigitalAudio, null, this);
|
||||||
|
|
|
||||||
|
|
@ -146,28 +146,28 @@ namespace PepperDash.Essentials.Devices.Displays
|
||||||
v => SetVolume((ushort)v),
|
v => SetVolume((ushort)v),
|
||||||
() => _LastVolumeSent);
|
() => _LastVolumeSent);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this), InputHdmi1Value);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this), InputHdmi1Value);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this), InputHdmi2Value);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this), InputHdmi2Value);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi3), this), InputHdmi3Value);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi3), this), InputHdmi3Value);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn4, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn4, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi4), this), InputHdmi4Value);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi4), this), InputHdmi4Value);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn5, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn5, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi5), this), InputHdmi5Value);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi5), this), InputHdmi5Value);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.DisplayPortIn1, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.DisplayPortIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort1), this), InputDisplayPort1Value);
|
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort1), this), InputDisplayPort1Value);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.VgaIn, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.VgaIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Dvi, new Action(InputVga1), this), InputVga1Value);
|
eRoutingPortConnectionType.Dvi, new Action(InputVga1), this), InputVga1Value);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.IpcOps, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.IpcOps, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Composite, new Action(InputIpcOps), this), InputIpcOpsValue);
|
eRoutingPortConnectionType.Composite, new Action(InputIpcOps), this), InputIpcOpsValue);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.MediaPlayer, eRoutingSignalType.Video,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.MediaPlayer, eRoutingSignalType.Video,
|
||||||
|
|
|
||||||
|
|
@ -103,21 +103,21 @@ namespace PepperDash.Essentials.Devices.Displays
|
||||||
PortGather.LineReceived += this.Port_LineReceived;
|
PortGather.LineReceived += this.Port_LineReceived;
|
||||||
CommunicationMonitor = new GenericCommunicationMonitor(this, Communication, 30000, 120000, 300000, "xx\x0d");
|
CommunicationMonitor = new GenericCommunicationMonitor(this, Communication, 30000, 120000, 300000, "xx\x0d");
|
||||||
|
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this));
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this));
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi3), this));
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi3), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn4, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn4, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi4), this));
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi4), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DisplayPortIn1, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DisplayPortIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort1), this));
|
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort1), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DisplayPortIn2, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DisplayPortIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort2), this));
|
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort2), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DviIn, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DviIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Dvi, new Action(InputDvi1), this));
|
eRoutingPortConnectionType.Dvi, new Action(InputDvi1), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Composite, new Action(InputVideo1), this));
|
eRoutingPortConnectionType.Composite, new Action(InputVideo1), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.VgaIn, eRoutingSignalType.Video,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.VgaIn, eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Vga, new Action(InputVga), this));
|
eRoutingPortConnectionType.Vga, new Action(InputVga), this));
|
||||||
|
|
|
||||||
|
|
@ -103,14 +103,14 @@ namespace PepperDash.Essentials.Devices.Displays
|
||||||
PortGather.LineReceived += this.Port_LineReceived;
|
PortGather.LineReceived += this.Port_LineReceived;
|
||||||
CommunicationMonitor = new GenericCommunicationMonitor(this, Communication, 30000, 120000, 300000, "\x02QPW\x03"); // Query Power
|
CommunicationMonitor = new GenericCommunicationMonitor(this, Communication, 30000, 120000, 300000, "\x02QPW\x03"); // Query Power
|
||||||
|
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this));
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this));
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this));
|
||||||
|
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DviIn, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.DviIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Dvi, new Action(InputDvi1), this));
|
eRoutingPortConnectionType.Dvi, new Action(InputDvi1), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.AudioVideo,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Composite, new Action(InputVideo1), this));
|
eRoutingPortConnectionType.Composite, new Action(InputVideo1), this));
|
||||||
InputPorts.Add(new RoutingInputPort(RoutingPortNames.VgaIn, eRoutingSignalType.Video,
|
InputPorts.Add(new RoutingInputPort(RoutingPortNames.VgaIn, eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Vga, new Action(InputVga), this));
|
eRoutingPortConnectionType.Vga, new Action(InputVga), this));
|
||||||
|
|
|
||||||
|
|
@ -98,28 +98,28 @@ namespace PepperDash.Essentials.Devices.Displays
|
||||||
v => SetVolume((ushort)v),
|
v => SetVolume((ushort)v),
|
||||||
() => _LastVolumeSent);
|
() => _LastVolumeSent);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this), 0x21);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1), this), 0x21);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn1PC, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn1PC, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1PC), this), 0x22);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi1PC), this), 0x22);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this), 0x23);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2), this), 0x23);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn2PC, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn2PC, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2PC), this), 0x24);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi2PC), this), 0x24);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi3), this), 0x32);
|
eRoutingPortConnectionType.Hdmi, new Action(InputHdmi3), this), 0x32);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.DisplayPortIn1, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.DisplayPortIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort1), this), 0x25);
|
eRoutingPortConnectionType.DisplayPort, new Action(InputDisplayPort1), this), 0x25);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.DviIn, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.DviIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Dvi, new Action(InputDvi1), this), 0x18);
|
eRoutingPortConnectionType.Dvi, new Action(InputDvi1), this), 0x18);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.AudioVideo,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.CompositeIn, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Composite, new Action(InputVideo1), this), 0x08);
|
eRoutingPortConnectionType.Composite, new Action(InputVideo1), this), 0x08);
|
||||||
|
|
||||||
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.RgbIn1, eRoutingSignalType.Video,
|
AddRoutingInputPort(new RoutingInputPort(RoutingPortNames.RgbIn1, eRoutingSignalType.Video,
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ namespace PepperDash.Essentials.Devices.Common
|
||||||
: base(key, name)
|
: base(key, name)
|
||||||
{
|
{
|
||||||
|
|
||||||
AnyOut = new RoutingOutputPort(RoutingPortNames.AnyOut, eRoutingSignalType.AudioVideo,
|
AnyOut = new RoutingOutputPort(RoutingPortNames.AnyOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort> { AnyOut };
|
OutputPorts = new RoutingPortCollection<RoutingOutputPort> { AnyOut };
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ namespace PepperDash.Essentials.Devices.Common
|
||||||
HasPowerOnFeedback = new BoolFeedback("HasPowerFeedback",
|
HasPowerOnFeedback = new BoolFeedback("HasPowerFeedback",
|
||||||
() => this.GetVideoStatuses() != VideoStatusOutputs.NoStatus);
|
() => this.GetVideoStatuses() != VideoStatusOutputs.NoStatus);
|
||||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
||||||
OutputPorts.Add(AnyVideoOut = new RoutingOutputPort(RoutingPortNames.AnyVideoOut, eRoutingSignalType.AudioVideo,
|
OutputPorts.Add(AnyVideoOut = new RoutingOutputPort(RoutingPortNames.AnyVideoOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.None, 0, this));
|
eRoutingPortConnectionType.None, 0, this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ namespace PepperDash.Essentials.Devices.Common
|
||||||
HasPowerOnFeedback = new BoolFeedback("HasPowerFeedback",
|
HasPowerOnFeedback = new BoolFeedback("HasPowerFeedback",
|
||||||
() => this.GetVideoStatuses() != VideoStatusOutputs.NoStatus);
|
() => this.GetVideoStatuses() != VideoStatusOutputs.NoStatus);
|
||||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
OutputPorts = new RoutingPortCollection<RoutingOutputPort>();
|
||||||
OutputPorts.Add(AnyVideoOut = new RoutingOutputPort(RoutingPortNames.AnyOut, eRoutingSignalType.AudioVideo,
|
OutputPorts.Add(AnyVideoOut = new RoutingOutputPort(RoutingPortNames.AnyOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.None, 0, this));
|
eRoutingPortConnectionType.None, 0, this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ namespace PepperDash.Essentials.Devices.Common
|
||||||
KeypadAccessoryButton2Command = "NumericEnter";
|
KeypadAccessoryButton2Command = "NumericEnter";
|
||||||
KeypadAccessoryButton2Label = "Enter";
|
KeypadAccessoryButton2Label = "Enter";
|
||||||
|
|
||||||
AnyVideoOut = new RoutingOutputPort(RoutingPortNames.AnyVideoOut, eRoutingSignalType.AudioVideo,
|
AnyVideoOut = new RoutingOutputPort(RoutingPortNames.AnyVideoOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
AnyAudioOut = new RoutingOutputPort(RoutingPortNames.AnyAudioOut, eRoutingSignalType.Audio,
|
AnyAudioOut = new RoutingOutputPort(RoutingPortNames.AnyAudioOut, eRoutingSignalType.Audio,
|
||||||
eRoutingPortConnectionType.DigitalAudio, null, this);
|
eRoutingPortConnectionType.DigitalAudio, null, this);
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ namespace PepperDash.Essentials.Devices.Common
|
||||||
IrPort = portCont;
|
IrPort = portCont;
|
||||||
DeviceManager.AddDevice(portCont);
|
DeviceManager.AddDevice(portCont);
|
||||||
|
|
||||||
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
AnyAudioOut = new RoutingOutputPort(RoutingPortNames.AnyAudioOut, eRoutingSignalType.Audio,
|
AnyAudioOut = new RoutingOutputPort(RoutingPortNames.AnyAudioOut, eRoutingSignalType.Audio,
|
||||||
eRoutingPortConnectionType.DigitalAudio, null, this);
|
eRoutingPortConnectionType.DigitalAudio, null, this);
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ namespace PepperDash.Essentials.Devices.Common
|
||||||
IrPort = portCont;
|
IrPort = portCont;
|
||||||
DeviceManager.AddDevice(portCont);;
|
DeviceManager.AddDevice(portCont);;
|
||||||
|
|
||||||
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.AudioVideo,
|
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort> { HdmiOut };
|
OutputPorts = new RoutingPortCollection<RoutingOutputPort> { HdmiOut };
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -360,16 +360,16 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.Cisco
|
||||||
CodecStatus.Status.Conference.Presentation.Mode.ValueChangedAction += SharingContentIsOnFeedback.FireUpdate;
|
CodecStatus.Status.Conference.Presentation.Mode.ValueChangedAction += SharingContentIsOnFeedback.FireUpdate;
|
||||||
CodecStatus.Status.Conference.Presentation.Mode.ValueChangedAction += FarEndIsSharingContentFeedback.FireUpdate;
|
CodecStatus.Status.Conference.Presentation.Mode.ValueChangedAction += FarEndIsSharingContentFeedback.FireUpdate;
|
||||||
|
|
||||||
CodecOsdIn = new RoutingInputPort(RoutingPortNames.CodecOsd, eRoutingSignalType.AudioVideo,
|
CodecOsdIn = new RoutingInputPort(RoutingPortNames.CodecOsd, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(StopSharing), this);
|
eRoutingPortConnectionType.Hdmi, new Action(StopSharing), this);
|
||||||
HdmiIn2 = new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo,
|
HdmiIn2 = new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(SelectPresentationSource1), this);
|
eRoutingPortConnectionType.Hdmi, new Action(SelectPresentationSource1), this);
|
||||||
HdmiIn3 = new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.AudioVideo,
|
HdmiIn3 = new RoutingInputPort(RoutingPortNames.HdmiIn3, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(SelectPresentationSource2), this);
|
eRoutingPortConnectionType.Hdmi, new Action(SelectPresentationSource2), this);
|
||||||
|
|
||||||
HdmiOut1 = new RoutingOutputPort(RoutingPortNames.HdmiOut1, eRoutingSignalType.AudioVideo,
|
HdmiOut1 = new RoutingOutputPort(RoutingPortNames.HdmiOut1, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
HdmiOut2 = new RoutingOutputPort(RoutingPortNames.HdmiOut2, eRoutingSignalType.AudioVideo,
|
HdmiOut2 = new RoutingOutputPort(RoutingPortNames.HdmiOut2, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
InputPorts.Add(CodecOsdIn);
|
InputPorts.Add(CodecOsdIn);
|
||||||
|
|
|
||||||
|
|
@ -56,13 +56,13 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
||||||
|
|
||||||
CurrentDirectoryResultIsNotDirectoryRoot.FireUpdate();
|
CurrentDirectoryResultIsNotDirectoryRoot.FireUpdate();
|
||||||
|
|
||||||
CodecOsdIn = new RoutingInputPort(RoutingPortNames.CodecOsd, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 0, this);
|
CodecOsdIn = new RoutingInputPort(RoutingPortNames.CodecOsd, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 0, this);
|
||||||
InputPorts.Add(CodecOsdIn);
|
InputPorts.Add(CodecOsdIn);
|
||||||
HdmiIn1 = new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 1, this);
|
HdmiIn1 = new RoutingInputPort(RoutingPortNames.HdmiIn1, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 1, this);
|
||||||
InputPorts.Add(HdmiIn1);
|
InputPorts.Add(HdmiIn1);
|
||||||
HdmiIn2 = new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, 2, this);
|
HdmiIn2 = new RoutingInputPort(RoutingPortNames.HdmiIn2, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, 2, this);
|
||||||
InputPorts.Add(HdmiIn2);
|
InputPorts.Add(HdmiIn2);
|
||||||
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.AudioVideo, eRoutingPortConnectionType.Hdmi, null, this);
|
HdmiOut = new RoutingOutputPort(RoutingPortNames.HdmiOut, eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
OutputPorts.Add(HdmiOut);
|
OutputPorts.Add(HdmiOut);
|
||||||
|
|
||||||
CallHistory = new CodecCallHistory();
|
CallHistory = new CodecCallHistory();
|
||||||
|
|
|
||||||
|
|
@ -201,10 +201,10 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||||
PortGather.IncludeDelimiter = true;
|
PortGather.IncludeDelimiter = true;
|
||||||
PortGather.LineReceived += this.Port_LineReceived;
|
PortGather.LineReceived += this.Port_LineReceived;
|
||||||
|
|
||||||
CodecOsdIn = new RoutingInputPort(RoutingPortNames.CodecOsd, eRoutingSignalType.AudioVideo,
|
CodecOsdIn = new RoutingInputPort(RoutingPortNames.CodecOsd, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, new Action(StopSharing), this);
|
eRoutingPortConnectionType.Hdmi, new Action(StopSharing), this);
|
||||||
|
|
||||||
Output1 = new RoutingOutputPort(RoutingPortNames.AnyVideoOut, eRoutingSignalType.AudioVideo,
|
Output1 = new RoutingOutputPort(RoutingPortNames.AnyVideoOut, eRoutingSignalType.Audio | eRoutingSignalType.Video,
|
||||||
eRoutingPortConnectionType.Hdmi, null, this);
|
eRoutingPortConnectionType.Hdmi, null, this);
|
||||||
|
|
||||||
SelfviewIsOnFeedback = new BoolFeedback(SelfViewIsOnFeedbackFunc);
|
SelfviewIsOnFeedback = new BoolFeedback(SelfViewIsOnFeedbackFunc);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue