Пример #1
0
        public void SetDocumentParameters(ManifestParameters docParams)
        {
            parameters = docParams;

            // Setting new doc parameters for dynamic content require
            // data purge.
            timelinePurged = !parameters.Document.IsDynamic;
        }
Пример #2
0
        private void ProcessManifest(CancellationToken token)
        {
            logger.Info("");

            token.ThrowIfCancellationRequested();

            var tmpPeriod = GetPeriod(token);

            if (tmpPeriod == null)
            {
                // If we do not have a period, force HasChanged flag to be set
                // regardless of document publish time.
                //
                Manifest.ForceHasChangedOnNextReload();
                return;
            }

            if (!Manifest.HasChanged)
            {
                return;
            }

            // Set period with Manifest Parameters. Will be applied to ALL media within period.
            //
            var manifestParams = new ManifestParameters(Manifest.CurrentDocument, tmpPeriod)
            {
                PlayClock = Manifest.CurrentDocument.WallClock(CurrentTime)
            };

            tmpPeriod.SetManifestParameters(manifestParams);

            // Apply new manifest
            //
            // Success  = Start of playback.
            // Failure  = Static Content: Termination signaled by exception.
            //            Dynamic content: Do manifest reload and force "has changed" flag to be set
            //            to allow re-application of manifest regardless of its content change.
            //
            // Manageable errors will be notified by ArgumentException and handled by the caller.
            //
            ApplyPeriod(token, tmpPeriod);
            NotifyDurationChange();
            BuildSubtitleInfos(tmpPeriod);
            token.ThrowIfCancellationRequested();
            manifestReadySubject.OnNext(Unit.Default);
        }
Пример #3
0
 public void SetDocumentParameters(ManifestParameters docParams)
 {
     parameters = docParams;
 }