private void OnUserEvent(object sender, UserStateChangedEvent e) { Debug.WriteLine("Got new user event for user with id: " + e.UserId); Debug.WriteLine("User just " + (e.IsConnected ? "joined" : "left") + "the scope"); if (e.IsConnected) { Debug.WriteLine("User is " + (!e.AudioPublished ? "not" : "") + " publishing audio stream"); Debug.WriteLine("User is " + (!e.VideoPublished ? "not" : "") + " publishing video stream"); if (e.VideoPublished) { Debug.WriteLine("Creating renderer for remote user sink: " + e.VideoSinkId); var rOptions = new RenderOptions(); rOptions.mirror = true; rOptions.sinkId = e.VideoSinkId; rOptions.filter = VideoScalingFilter.FAST_BILINEAR; var rHandler = new ResultHandler <RenderingWidget>((_1) => AppendRenderer(RemoteVideoPanel, _1)); Platform.renderSink(Platform.R <RenderingWidget>(rHandler, GenErrHandler("renderSink")), rOptions); } } else { } }
public NowPlayingViewModel( IEventAggregator eventAggregator, IAudioEngine playEngine, ISongService songService, ILyricsService lyricService, ICredentialManageService credentialStorageService) { this._eventAggregator = eventAggregator; this._playEngine = playEngine; this._songService = songService; this._lyricsService = lyricService; this._credentialStorageService = credentialStorageService; PlayList = new Queue <Song>(); var switchChannelEvent = _eventAggregator.GetEvent <SwitchChannelEvent>(); switchChannelEvent.Subscribe(async c => await HandleChannelChange(c)); _userStateChangedEvent = _eventAggregator.GetEvent <UserStateChangedEvent>(); _userStateChangedEvent.Subscribe(HandleUserStateChange); playEngine.TrackEnded += playEngine_TrackeEnded; LoadedCommand = DelegateCommand.FromAsyncHandler(Loaded); PlayNextCommand = DelegateCommand.FromAsyncHandler(async() => await PlayNext(false)); LikeCommand = DelegateCommand.FromAsyncHandler(Like, () => this.IsLoggedIn); UnlikeCommand = DelegateCommand.FromAsyncHandler(Unlike, () => this.IsLoggedIn); BanCommand = DelegateCommand.FromAsyncHandler(Ban, () => this.IsLoggedIn); _timer = new DispatcherTimer { Interval = TimeSpan.FromSeconds(0.4) }; _timer.Tick += _timer_Tick; _timer.Start(); }
private void OnMediaStream(object sender, UserStateChangedEvent e) { Debug.WriteLine("Got new media stream event for user with id: " + e.UserId + ". Media type: " + e.MediaType); }
void onMediaStream(object sender, UserStateChangedEvent e) { logD("Got new media stream event for user with id: " + e.UserId + ". Media type: " + e.MediaType); }