protected void GetTransportInfoSink(CpAVTransport sender, System.UInt32 InstanceID, CpAVTransport.Enum_TransportState CurrentTransportState, CpAVTransport.Enum_TransportStatus CurrentTransportStatus, CpAVTransport.Enum_TransportPlaySpeed CurrentSpeed, UPnPInvokeException e, object Handle) { if (e != null) { return; } _TransportStatus = _cp.Enum_TransportStatus_ToString(CurrentTransportStatus); switch (CurrentTransportState) { case CpAVTransport.Enum_TransportState.PLAYING: this._PlayState = "PLAYING"; break; case CpAVTransport.Enum_TransportState.STOPPED: this._PlayState = "STOPPED"; break; case CpAVTransport.Enum_TransportState.PAUSED_PLAYBACK: this._PlayState = "PAUSED_PLAYBACK"; break; case CpAVTransport.Enum_TransportState.PAUSED_RECORDING: this._PlayState = "PAUSED_RECORDING"; break; case CpAVTransport.Enum_TransportState.RECORDING: this._PlayState = "RECORDING"; break; case CpAVTransport.Enum_TransportState.TRANSITIONING: this._PlayState = "TRANSITIONING"; break; } if (this.OnPlayStateChanged != null) { OnPlayStateChanged(this); } if (this.OnTransportStatusChanged != null) { OnTransportStatusChanged(this); } lock (this) { --StateCounter; if (StateCounter == 0) { if (OnReady != null) { OnReady(this); } } } }