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
     {
     }
 }
Esempio n. 2
0
        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);
 }
Esempio n. 4
0
 void onMediaStream(object sender, UserStateChangedEvent e)
 {
     logD("Got new media stream event for user with id: " + e.UserId +
          ". Media type: " + e.MediaType);
 }