mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-18 14:15:08 +00:00
Compare commits
2 Commits
1.13.3-alp
...
feature/Dm
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
eb5251cfa4 | ||
|
|
55ad92e2f6 |
@@ -72,7 +72,8 @@ namespace PepperDash.Essentials.Core.Bridges
|
||||
/// </summary>
|
||||
/// <param name="joinStart">Join this join map will start at</param>
|
||||
/// <param name="type">Type of the child join map</param>
|
||||
protected DmRmcControllerJoinMap(uint joinStart, Type type) : base(joinStart, type)
|
||||
protected DmRmcControllerJoinMap(uint joinStart, Type type)
|
||||
: base(joinStart, type)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
@@ -88,7 +88,8 @@ namespace PepperDash.Essentials.Core.Bridges
|
||||
/// </summary>
|
||||
/// <param name="joinStart">Join this join map will start at</param>
|
||||
/// <param name="type">Type of the child join map</param>
|
||||
protected DmTxControllerJoinMap(uint joinStart, Type type) : base(joinStart, type)
|
||||
protected DmTxControllerJoinMap(uint joinStart, Type type)
|
||||
: base(joinStart, type)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ namespace PepperDash.Essentials.Core
|
||||
|
||||
//*******************************************************************************************
|
||||
// Interfaces
|
||||
|
||||
/// <summary>
|
||||
/// For rooms with a single presentation source, change event
|
||||
/// </summary>
|
||||
|
||||
@@ -692,14 +692,14 @@ namespace PepperDash.Essentials.DM
|
||||
|
||||
var cecPort = hdmiInputCard.HdmiInputPort;
|
||||
|
||||
AddInputPortWithDebug(number, string.Format("HdmiIn1{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, cecPort);
|
||||
AddInputPortWithDebug(number, string.Format("HdmiIn{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, eRoutingPortConnectionType.Hdmi, cecPort);
|
||||
}
|
||||
else if (inputCard is Card.Dmps3HdmiInput)
|
||||
{
|
||||
var hdmiInputCard = inputCard as Card.Dmps3HdmiInput;
|
||||
var cecPort = hdmiInputCard.HdmiInputPort;
|
||||
|
||||
AddInputPortWithDebug(number, string.Format("HdmiIn1{0}", number), eRoutingSignalType.Audio | eRoutingSignalType.Video, 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);
|
||||
}
|
||||
else if (inputCard is Card.Dmps3HdmiVgaInput)
|
||||
|
||||
@@ -28,7 +28,7 @@ namespace PepperDash.Essentials.DM
|
||||
public const string DmOut2 = "DmOut2";
|
||||
public const string FromTx = "FromTx";
|
||||
public const string Hdmi = "Hdmi";
|
||||
public const string HdmiIn = "HdmiIn1";
|
||||
public const string HdmiIn = "HdmiIn";
|
||||
public const string HdmiIn1 = "HdmiIn1";
|
||||
public const string HdmiIn2 = "HdmiIn2";
|
||||
public const string HdmiOut1 = "HdmiOut1";
|
||||
|
||||
@@ -25,8 +25,6 @@ namespace PepperDash_Essentials_DM
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public interface IHasHdmiInHdcpSet
|
||||
{
|
||||
void SetHdmiInHdcpState(eHdcpCapabilityType hdcpState);
|
||||
@@ -43,8 +41,6 @@ namespace PepperDash_Essentials_DM
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public interface IHasHdmiIn1HdcpSet
|
||||
{
|
||||
void SetHdmiIn1HdcpState(eHdcpCapabilityType hdcpState);
|
||||
@@ -61,8 +57,6 @@ namespace PepperDash_Essentials_DM
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public interface IHasHdmiIn2HdcpSet
|
||||
{
|
||||
void SetHdmiIn2HdcpState(eHdcpCapabilityType hdcpState);
|
||||
@@ -80,10 +74,6 @@ namespace PepperDash_Essentials_DM
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public interface IHasDisplayPortInHdcpGet
|
||||
{
|
||||
IntFeedback DisplayPortInHdcpStateFeedback { get; }
|
||||
@@ -98,8 +88,4 @@ namespace PepperDash_Essentials_DM
|
||||
{
|
||||
eHdcpCapabilityType DisplayPortInHdcpCapability { get; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -59,8 +59,8 @@ namespace PepperDash.Essentials.DM
|
||||
EdidPreferredTimingFeedback = new StringFeedback(() => _rmc.HdmiOutput.ConnectedDevice.PreferredTiming.StringValue);
|
||||
EdidSerialNumberFeedback = new StringFeedback(() => _rmc.HdmiOutput.ConnectedDevice.SerialNumber.StringValue);
|
||||
|
||||
InputPorts = new RoutingPortCollection<RoutingInputPort> {DmIn};
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort> {HdmiOut, BalancedAudioOut};
|
||||
InputPorts = new RoutingPortCollection<RoutingInputPort> { DmIn };
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort> { HdmiOut, BalancedAudioOut };
|
||||
|
||||
VideoOutputResolutionFeedback = new StringFeedback(() => _rmc.HdmiOutput.GetVideoResolutionString());
|
||||
DmInHdcpStateFeedback = new IntFeedback("DmInHdcpCapability",
|
||||
|
||||
@@ -6,6 +6,7 @@ using Crestron.SimplSharpPro.DM.Endpoints.Receivers;
|
||||
using PepperDash.Core;
|
||||
using PepperDash.Essentials.Core;
|
||||
using PepperDash.Essentials.Core.Bridges;
|
||||
using PepperDash_Essentials_DM;
|
||||
|
||||
namespace PepperDash.Essentials.DM
|
||||
{
|
||||
@@ -15,7 +16,7 @@ namespace PepperDash.Essentials.DM
|
||||
/// </summary>
|
||||
[Description("Wrapper Class for DM-RMC-4K-SCALER-C-DSP")]
|
||||
public class DmRmc4kScalerCDspController : DmRmcControllerBase, IRoutingInputsOutputs, IBasicVolumeWithFeedback,
|
||||
IIROutputPorts, IComPorts, ICec, IRelayPorts
|
||||
IIROutputPorts, IComPorts, ICec, IRelayPorts, IHasDmInHdcp
|
||||
{
|
||||
private readonly DmRmc4kScalerCDsp _rmc;
|
||||
|
||||
@@ -27,6 +28,11 @@ namespace PepperDash.Essentials.DM
|
||||
|
||||
public RoutingPortCollection<RoutingOutputPort> OutputPorts { get; private set; }
|
||||
|
||||
public EndpointDmInputStreamWithCec DmInput { get; private set; }
|
||||
|
||||
public IntFeedback DmInHdcpStateFeedback { get; private set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Make a Crestron RMC and put it in here
|
||||
/// </summary>
|
||||
@@ -53,6 +59,12 @@ namespace PepperDash.Essentials.DM
|
||||
|
||||
VideoOutputResolutionFeedback = new StringFeedback(() => _rmc.HdmiOutput.GetVideoResolutionString());
|
||||
|
||||
DmInHdcpStateFeedback = new IntFeedback("DmInHdcpCapability",
|
||||
() => (int) _rmc.DmInput.HdcpCapabilityFeedback);
|
||||
|
||||
AddToFeedbackList(DmInHdcpStateFeedback);
|
||||
|
||||
|
||||
InputPorts = new RoutingPortCollection<RoutingInputPort> {DmIn};
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort> {HdmiOut, BalancedAudioOut};
|
||||
|
||||
@@ -191,5 +203,17 @@ namespace PepperDash.Essentials.DM
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
public eHdcpCapabilityType DmInHdcpCapability
|
||||
{
|
||||
get { return eHdcpCapabilityType.Hdcp2_2Support; }
|
||||
}
|
||||
|
||||
public void SetDmInHdcpState(eHdcpCapabilityType hdcpState)
|
||||
{
|
||||
if (_rmc == null) return;
|
||||
_rmc.DmInput.HdcpCapability = hdcpState;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -87,8 +87,8 @@ namespace PepperDash.Essentials.DM
|
||||
|
||||
VideoOutputResolutionFeedback = new StringFeedback(() => _rmc.HdmiOutput.GetVideoResolutionString());
|
||||
|
||||
InputPorts = new RoutingPortCollection<RoutingInputPort> {DmIn, HdmiIn};
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort> {HdmiOut};
|
||||
InputPorts = new RoutingPortCollection<RoutingInputPort> { DmIn, HdmiIn };
|
||||
OutputPorts = new RoutingPortCollection<RoutingOutputPort> { HdmiOut };
|
||||
|
||||
_rmc.HdmiOutput.OutputStreamChange += HdmiOutput_OutputStreamChange;
|
||||
_rmc.HdmiOutput.ConnectedDevice.DeviceInformationChange += ConnectedDevice_DeviceInformationChange;
|
||||
|
||||
@@ -135,9 +135,9 @@ namespace PepperDash.Essentials.DM
|
||||
}
|
||||
}
|
||||
|
||||
trilist.UShortInput[joinMap.HdcpSupportCapability.JoinNumber].UShortValue = (ushort) hdcpCapability;
|
||||
trilist.UShortInput[joinMap.HdcpSupportCapability.JoinNumber].UShortValue = (ushort)hdcpCapability;
|
||||
|
||||
trilist.UShortInput[joinMap.HdcpInputPortCount.JoinNumber].UShortValue = (ushort) routing.InputPorts.Count;
|
||||
trilist.UShortInput[joinMap.HdcpInputPortCount.JoinNumber].UShortValue = (ushort)routing.InputPorts.Count;
|
||||
|
||||
var routingWithFeedback = routing as IRmcRouting;
|
||||
if (routingWithFeedback == null) return;
|
||||
|
||||
@@ -127,23 +127,23 @@ namespace PepperDash.Essentials.DM
|
||||
|
||||
Tx.OnlineStatusChange += Tx_OnlineStatusChange;
|
||||
|
||||
VideoSourceNumericFeedback = new IntFeedback(() => (int) Tx.VideoSourceFeedback);
|
||||
VideoSourceNumericFeedback = new IntFeedback(() => (int)Tx.VideoSourceFeedback);
|
||||
|
||||
AudioSourceNumericFeedback = new IntFeedback(() => (int) Tx.AudioSourceFeedback);
|
||||
AudioSourceNumericFeedback = new IntFeedback(() => (int)Tx.AudioSourceFeedback);
|
||||
|
||||
HdmiIn1HdcpCapabilityFeedback = new IntFeedback("HdmiIn1HdcpCapability",
|
||||
() => (int) tx.HdmiInputs[1].HdcpCapabilityFeedback);
|
||||
() => (int)tx.HdmiInputs[1].HdcpCapabilityFeedback);
|
||||
|
||||
HdmiIn2HdcpCapabilityFeedback = new IntFeedback("HdmiIn2HdcpCapability",
|
||||
() => (int) tx.HdmiInputs[2].HdcpCapabilityFeedback);
|
||||
() => (int)tx.HdmiInputs[2].HdcpCapabilityFeedback);
|
||||
|
||||
HdcpSupportCapability = eHdcpCapabilityType.Hdcp2_2Support;
|
||||
|
||||
HdcpStateFeedback = new IntFeedback(() => (int) HdcpSupportCapability);
|
||||
HdcpStateFeedback = new IntFeedback(() => (int)HdcpSupportCapability);
|
||||
|
||||
Hdmi1VideoSyncFeedback = new BoolFeedback(() => (bool) tx.HdmiInputs[1].SyncDetectedFeedback.BoolValue);
|
||||
Hdmi1VideoSyncFeedback = new BoolFeedback(() => (bool)tx.HdmiInputs[1].SyncDetectedFeedback.BoolValue);
|
||||
|
||||
Hdmi2VideoSyncFeedback = new BoolFeedback(() => (bool) tx.HdmiInputs[2].SyncDetectedFeedback.BoolValue);
|
||||
Hdmi2VideoSyncFeedback = new BoolFeedback(() => (bool)tx.HdmiInputs[2].SyncDetectedFeedback.BoolValue);
|
||||
|
||||
var combinedFuncs = new VideoStatusFuncsWrapper
|
||||
{
|
||||
|
||||
@@ -124,9 +124,14 @@ namespace PepperDash.Essentials.DM
|
||||
|
||||
HdmiIn2HdcpCapabilityFeedback = new IntFeedback("HdmiIn2HdcpCapability", () => (int)tx.HdmiInputs[2].HdcpCapabilityFeedback);
|
||||
|
||||
HdcpSupportCapability = eHdcpCapabilityType.Hdcp2_2Support;
|
||||
HdcpStateFeedback =
|
||||
new IntFeedback(
|
||||
() =>
|
||||
tx.HdmiInputs[1].HdcpCapabilityFeedback > tx.HdmiInputs[2].HdcpCapabilityFeedback
|
||||
? (int)tx.HdmiInputs[1].HdcpCapabilityFeedback
|
||||
: (int)tx.HdmiInputs[2].HdcpCapabilityFeedback);
|
||||
|
||||
HdcpStateFeedback = new IntFeedback(() => (int)HdcpSupportCapability);
|
||||
HdcpSupportCapability = eHdcpCapabilityType.Hdcp2_2Support;
|
||||
|
||||
Hdmi1VideoSyncFeedback = new BoolFeedback(() => (bool)tx.HdmiInputs[1].SyncDetectedFeedback.BoolValue);
|
||||
|
||||
|
||||
@@ -133,7 +133,7 @@ namespace PepperDash.Essentials.DM
|
||||
HdmiIn2HdcpCapabilityFeedback = new IntFeedback("HdmiIn2HdcpCapability", () => (int)tx.HdmiInputs[2].HdcpCapabilityFeedback);
|
||||
|
||||
DisplayPortInHdcpCapabilityFeedback = new IntFeedback("DisplayPortHdcpCapability",
|
||||
() => (int) tx.DisplayPortInput.HdcpCapabilityFeedback);
|
||||
() => (int)tx.DisplayPortInput.HdcpCapabilityFeedback);
|
||||
|
||||
|
||||
/*
|
||||
|
||||
@@ -98,7 +98,7 @@ namespace PepperDash.Essentials.DM
|
||||
// Catch constructor failures, mainly dues to IPID
|
||||
try
|
||||
{
|
||||
if(typeName.StartsWith("dmtx200"))
|
||||
if (typeName.StartsWith("dmtx200"))
|
||||
return new DmTx200Controller(key, name, new DmTx200C2G(ipid, Global.ControlSystem), false);
|
||||
if (typeName.StartsWith("dmtx201c"))
|
||||
return new DmTx201CController(key, name, new DmTx201C(ipid, Global.ControlSystem), false);
|
||||
@@ -180,7 +180,7 @@ namespace PepperDash.Essentials.DM
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else if(parentDev is DmpsRoutingController)
|
||||
else if (parentDev is DmpsRoutingController)
|
||||
{
|
||||
// Get the DMPS chassis and link stuff up
|
||||
var dmpsDev = (parentDev as DmpsRoutingController);
|
||||
@@ -209,7 +209,7 @@ namespace PepperDash.Essentials.DM
|
||||
|
||||
try
|
||||
{
|
||||
if(Global.ControlSystemIsDmps4kType)
|
||||
if (Global.ControlSystemIsDmps4kType)
|
||||
{
|
||||
tx = GetDmTxForChassisWithoutIpId(key, name, typeName, dmInput);
|
||||
useChassisForOfflineFeedback = true;
|
||||
@@ -281,7 +281,8 @@ namespace PepperDash.Essentials.DM
|
||||
};
|
||||
}
|
||||
|
||||
protected DmTxControllerBase(string key, string name, DmHDBasedTEndPoint hardware) : base(key, name, hardware)
|
||||
protected DmTxControllerBase(string key, string name, DmHDBasedTEndPoint hardware)
|
||||
: base(key, name, hardware)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -483,7 +484,7 @@ namespace PepperDash.Essentials.DM
|
||||
trilist.SetUShortSigAction(join,
|
||||
s =>
|
||||
{
|
||||
port.HdcpCapability = (eHdcpCapabilityType) s;
|
||||
port.HdcpCapability = (eHdcpCapabilityType)s;
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@@ -105,9 +105,9 @@
|
||||
<Compile Include="Chassis\HdMdNxM4kEBridgeableController.cs" />
|
||||
<Compile Include="Chassis\HdMdNxM4kEController.cs" />
|
||||
<Compile Include="Config\InputPropertiesConfig.cs" />
|
||||
<Compile Include="Endpoints\EndpointInterfaces.cs" />
|
||||
<Compile Include="Endpoints\DGEs\DgeJoinMap.cs" />
|
||||
<Compile Include="Endpoints\DGEs\DmDge200CController.cs" />
|
||||
<Compile Include="Endpoints\EndpointInterfaces.cs" />
|
||||
<Compile Include="Endpoints\Receivers\DmRmc4kZ100CController.cs" />
|
||||
<Compile Include="Endpoints\Receivers\DmRmc4kZScalerCController.cs" />
|
||||
<Compile Include="Endpoints\Transmitters\DmTx4kz202CController.cs" />
|
||||
|
||||
Reference in New Issue
Block a user