コード例 #1
0
ファイル: MediaElementManager.cs プロジェクト: Jesn/MangGuoTv
        public Task SetSourceAsync(IMediaStreamSource source)
        {
            return(Dispatch(() =>
            {
                source.ValidateEvent(MediaStreamFsm.MediaEvent.MediaStreamSourceAssigned);

                var wasSet = Interlocked.Exchange(ref _sourceIsSet, 1);

                Debug.Assert(0 == wasSet);

                if (null != _mediaElement)
                {
                    UiThreadCleanup();

                    var mediaElement = _mediaElement;
                    _mediaElement = null;

                    _destroyMediaElement(mediaElement);
                }

                _mediaElement = _createMediaElement();

                if (null != _mediaElement)
                {
                    _mediaElement.SetSource((MediaStreamSource)source);
                }
                else
                {
                    Debug.WriteLine("MediaElementManager.SetSourceAsync() null media element");
                }
            }));
        }
コード例 #2
0
ファイル: MediaElementManager.cs プロジェクト: Jesn/MangGuoTv
        public Task SetSourceAsync(IMediaStreamSource source)
        {
            return Dispatch(() =>
            {
                source.ValidateEvent(MediaStreamFsm.MediaEvent.MediaStreamSourceAssigned);

                var wasSet = Interlocked.Exchange(ref _sourceIsSet, 1);

                Debug.Assert(0 == wasSet);

                if (null != _mediaElement)
                {
                    UiThreadCleanup();

                    var mediaElement = _mediaElement;
                    _mediaElement = null;

                    _destroyMediaElement(mediaElement);
                }

                _mediaElement = _createMediaElement();

                if (null != _mediaElement)
                    _mediaElement.SetSource((MediaStreamSource)source);
                else
                    Debug.WriteLine("MediaElementManager.SetSourceAsync() null media element");
            });
        }
コード例 #3
0
ファイル: TsMediaManager.cs プロジェクト: Jesn/MangGuoTv
 public TsMediaManager(ISegmentReaderManagerFactory segmentReaderManagerFactory, IMediaElementManager mediaElementManager, IMediaStreamSource mediaStreamSource, Func<Buffering.IBufferingManager> bufferingManagerFactory, IMediaManagerParameters mediaManagerParameters, IMediaParserFactory mediaParserFactory, IPlatformServices platformServices);
コード例 #4
0
ファイル: TsMediaManager.cs プロジェクト: Jesn/MangGuoTv
 public TsMediaManager(ISegmentReaderManagerFactory segmentReaderManagerFactory, IMediaElementManager mediaElementManager, IMediaStreamSource mediaStreamSource, Func <Buffering.IBufferingManager> bufferingManagerFactory, IMediaManagerParameters mediaManagerParameters, IMediaParserFactory mediaParserFactory, IPlatformServices platformServices);
コード例 #5
0
 public static void SetParameter(this IMediaStreamFascade mediaStreamFascade, IMediaStreamSource mediaStreamSource);
コード例 #6
0
 public static void SetParameter(this IMediaStreamFascade mediaStreamFascade, IMediaStreamSource mediaStreamSource);