private void HeuristicManager_RecommendationChanged(object sender, RecommendationChangedEventArgs e)
        {
            Debug.WriteLine("*** Recommend Enabled count: {0}", e.RecommendEnable.Count);
            Debug.WriteLine("--- Recommend disabled count: {0}", e.RecommendDisable.Count);
            foreach (SmoothStreamingMediaElement ssme in e.RecommendEnable)
            {
                foreach (SlaveMediaElement slave in SubMediaElements)
                {
                    if (ssme == slave.MediaElement)
                    {
                        slave.IsPhysicalSyncEnabled = true;

                        if (MainMedia != null && MainMedia.CurrentState != SmoothStreamingMediaElementState.Paused)
                        {
                            slave.MediaElement.Play();
                        }

                        //if (slave.MediaElement.DataContext is Video)
                        //{
                        //    if (MainMedia.RetryState != RetryState.None)
                        //    {
                        //        ((Video)slave.MediaElement.DataContext).IsMiniCamOn = false;
                        //    }
                        //    else
                        //    {
                        //        ((Video)slave.MediaElement.DataContext).IsMiniCamOn = true;
                        //    }
                        //}
                    }
                }
            }

            foreach (SmoothStreamingMediaElement ssme in e.RecommendDisable)
            {
                foreach (SlaveMediaElement slave in SubMediaElements)
                {
                    if (ssme == slave.MediaElement)
                    {
                        slave.IsPhysicalSyncEnabled = false;

                        if (slave.MediaElement.CurrentState != SmoothStreamingMediaElementState.Paused)
                        {
                            try
                            {
                                slave.MediaElement.Pause();
                            }
                            catch (InvalidOperationException) { }
                        }

                        //if (slave.MediaElement.DataContext is Video)
                        //{
                        //    ((Video)slave.MediaElement.DataContext).IsMiniCamOn = false;
                        //}
                    }
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// RaiseRecommendationChanged
        /// </summary>
        private void RaiseRecommendationChanged(IList <SmoothStreamingMediaElement> enable,
                                                IList <SmoothStreamingMediaElement> disable)
        {
            EventHandler <RecommendationChangedEventArgs> handler = RecommendationChanged;

            if (handler != null)
            {
                var args =
                    new RecommendationChangedEventArgs(enable,
                                                       disable,
                                                       _recommendPermanentlyDisableAllSecondary);
                handler(this, args);
            }
        }
        private void HeuristicManager_RecommendationChanged(object sender, RecommendationChangedEventArgs e)
        {
            Debug.WriteLine("*** Recommend Enabled count: {0}", e.RecommendEnable.Count);
            Debug.WriteLine("--- Recommend disabled count: {0}", e.RecommendDisable.Count);
            foreach (SmoothStreamingMediaElement ssme in e.RecommendEnable)
            {
                foreach (SlaveMediaElement slave in SubMediaElements)
                {
                    if (ssme == slave.MediaElement)
                    {
                        slave.IsPhysicalSyncEnabled = true;

                        if (MainMedia != null && MainMedia.CurrentState != SmoothStreamingMediaElementState.Paused)
                        {
                            slave.MediaElement.Play();
                        }
                        
                        //if (slave.MediaElement.DataContext is Video)
                        //{
                        //    if (MainMedia.RetryState != RetryState.None)
                        //    {
                        //        ((Video)slave.MediaElement.DataContext).IsMiniCamOn = false;
                        //    }
                        //    else
                        //    {
                        //        ((Video)slave.MediaElement.DataContext).IsMiniCamOn = true;
                        //    }
                        //}
                    }
                }
            }

            foreach (SmoothStreamingMediaElement ssme in e.RecommendDisable)
            {
                foreach (SlaveMediaElement slave in SubMediaElements)
                {
                    if (ssme == slave.MediaElement)
                    {
                        slave.IsPhysicalSyncEnabled = false;

                        if (slave.MediaElement.CurrentState != SmoothStreamingMediaElementState.Paused)
                        {
                            try
                            {
                                slave.MediaElement.Pause();
                            }
                            catch (InvalidOperationException) { }
                        }

                        //if (slave.MediaElement.DataContext is Video)
                        //{
                        //    ((Video)slave.MediaElement.DataContext).IsMiniCamOn = false;
                        //}
                    }
                }
            }
        }
 /// <summary>
 /// RaiseRecommendationChanged
 /// </summary>
 private void RaiseRecommendationChanged(IList<SmoothStreamingMediaElement> enable,
                                         IList<SmoothStreamingMediaElement> disable)
 {
     EventHandler<RecommendationChangedEventArgs> handler = RecommendationChanged;
     if (handler != null)
     {
         var args =
             new RecommendationChangedEventArgs(enable,
                                                disable,
                                                _recommendPermanentlyDisableAllSecondary);
         handler(this, args);
     }
 }