/// <summary> /// initialize settings for the miracast receiver /// </summary> /// <param name="receiver">the receiver to get settings for</param> /// <returns>initialized settings</returns> MiracastReceiverSettings GetReceiverSettings(MiracastReceiver receiver) { MiracastReceiverSettings s = receiver.GetDefaultSettings(); s.AuthorizationMethod = RequirePinAuth ? MiracastReceiverAuthorizationMethod.PinDisplayRequired : MiracastReceiverAuthorizationMethod.None; s.FriendlyName = DisplayName; return(s); }
/// <summary> /// end the current session and dispose the receiver /// </summary> public void Dispose() { //end session EndCurrentSession(false); //disable receiver castReceiver = null; }
/// <summary> /// init the miracast receiver. /// call this before calling StartSession() /// </summary> public void InitReceiver() { //create dispatcher mainThreadDispatcher = Dispatcher.FromThread(Thread.CurrentThread); //init receiver Log("start initializing receiver"); castReceiver = new MiracastReceiver(); castReceiver.StatusChanged += OnReceiverStatusChanged; //apply settings castReceiver.DisconnectAllAndApplySettings(GetReceiverSettings(castReceiver)); }
/// <summary> /// The status of the cast receiver changed /// </summary> void OnReceiverStatusChanged(MiracastReceiver sender, object args) { Log($"receiver listening status changed to {sender.GetStatus().ListeningStatus}"); }