public Task CloseAsync()
        {
            Debug.WriteLine("SimulatedMediaElementManager.CloseAsync()");

            if (null != _mediaStreamConfigurator)
                _mediaStreamConfigurator.Dispose();

            _mediaStreamConfigurator = null;

            return TplTaskExtensions.CompletedTask;
        }
        public void SetSource(ISimulatedMediaStreamConfigurator configurator)
        {
            Debug.WriteLine("SimulatedMediaElementManager.SetSourceAsync()");

            configurator.ValidateEvent(MediaStreamFsm.MediaEvent.MediaStreamSourceAssigned);

            _mediaStreamConfigurator = configurator;

            _asyncFifoWorker.Post(OpenMediaAsync, "SimulatedMediaElementManager.SetSourceAsync() OpenMediaAsync", _cancellationTokenSource.Token);
        }