public static LibMWCapture.MWCAP_VIDEO_SIGNAL_STATUS?HasSignal(this LibMWCapture.MWCAP_VIDEO_SIGNAL_STATUS signalStatus, out bool hasSignal)
        {
            switch (signalStatus.state)
            {
            case LibMWCapture.MWCAP_VIDEO_SIGNAL_STATE.MWCAP_VIDEO_SIGNAL_UNSUPPORTED:
            case LibMWCapture.MWCAP_VIDEO_SIGNAL_STATE.MWCAP_VIDEO_SIGNAL_NONE:
                hasSignal = false;
                break;

            case LibMWCapture.MWCAP_VIDEO_SIGNAL_STATE.MWCAP_VIDEO_SIGNAL_LOCKING:
            case LibMWCapture.MWCAP_VIDEO_SIGNAL_STATE.MWCAP_VIDEO_SIGNAL_LOCKED:
                hasSignal = true;
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
            return(signalStatus);
        }
 public static LibMWCapture.MWCAP_VIDEO_SIGNAL_STATUS?GetChannelSize(this LibMWCapture.MWCAP_VIDEO_SIGNAL_STATUS signalStatus, out Size channelSize)
 {
     channelSize = new Size(signalStatus.cx, signalStatus.cy);
     return(signalStatus);
 }