private static void Calculate(MetadataInfoTreeSource metadataInfoTreeSource)
        {
            var metadataManipulators = metadataInfoTreeSource.Settings.SettingsList.OfType<IMetadataManipulation>().ToList();

            var metadataInfoResult = metadataInfoTreeSource.Resource.Copy();

            metadataManipulators.ForEach(mm => metadataInfoResult = mm.EditInfo(metadataInfoResult, new List<MetadataInfoTreeContainer> { metadataInfoTreeSource.ResultMetadataInfo }));

            metadataInfoTreeSource.ResultMetadataInfo = metadataInfoResult;
        }
Exemple #2
0
        private static void Calculate(MetadataInfoTreeSource metadataInfoTreeSource)
        {
            var metadataManipulators = metadataInfoTreeSource.Settings.SettingsList.OfType <IMetadataManipulation>().ToList();

            var metadataInfoResult = metadataInfoTreeSource.Resource.Copy();

            metadataManipulators.ForEach(mm => metadataInfoResult = mm.EditInfo(metadataInfoResult, new List <MetadataInfoTreeContainer> {
                metadataInfoTreeSource.ResultMetadataInfo
            }));

            metadataInfoTreeSource.ResultMetadataInfo = metadataInfoResult;
        }
        private void Fill(FFmpegCommand command, Filterchain filterchain)
        {
            filterchain.ReceiptList.ForEach(streamId =>
            {
                var resourceIndexOf = CommandHelperUtility.IndexOfResource(command, streamId);
                if (resourceIndexOf > -1)
                {
                    DependecyTree.Add(MetadataInfoTreeSource.Create(command.Inputs[resourceIndexOf]));
                }

                var filterchainIndexOf = CommandHelperUtility.IndexOfFilterchain(command, streamId);
                if (filterchainIndexOf > -1)
                {
                    DependecyTree.Add(Create(command, command.Filtergraph[filterchainIndexOf]));
                }
            });
        }
        private void Fill(FFmpegCommand command, CommandOutput commandOutput)
        {
            //find the command output map setting, if the command output has map settings
            //then they make up its dependecy tree.
            var allSettingMaps = commandOutput.Settings.OfType <Map>();

            if (allSettingMaps.Any())
            {
                var streamIdListFromMaps = allSettingMaps.Select(map => StreamIdentifier.Create(command.Owner.Id, command.Id, map.Stream)).ToList();

                Fill(command, streamIdListFromMaps);

                return;
            }

            //if the command output does not contain map settings then the dependency tree
            //is made up of all the input streams.
            command.Objects.Inputs.ForEach(commandResource => DependecyTree.Add(MetadataInfoTreeSource.Create(commandResource)));
        }
Exemple #5
0
        private void Fill(FFmpegCommand command, List <StreamIdentifier> streamIdList)
        {
            streamIdList.ForEach(streamId =>
            {
                var resourceIndexOf = CommandHelper.IndexOfResource(command, streamId);
                if (resourceIndexOf > -1)
                {
                    DependecyTree.Add(MetadataInfoTreeSource.Create(command.Inputs[resourceIndexOf]));

                    return;
                }

                var filterchainIndexOf = CommandHelper.IndexOfFilterchain(command, streamId);
                if (filterchainIndexOf > -1)
                {
                    DependecyTree.Add(Create(command, command.Filtergraph[filterchainIndexOf]));
                }
            });
        }
Exemple #6
0
        public static MetadataInfoStreamCalculator Create(CommandInput commandResource)
        {
            var infoStreamItem = MetadataInfoTreeSource.Create(commandResource);

            return(new MetadataInfoStreamCalculator(infoStreamItem));
        }
Exemple #7
0
        public static MetadataInfoTreeSource Create(CommandInput commandResource)
        {
            var treeSourceFromInput = new MetadataInfoTreeSource(commandResource.Resource, commandResource.Settings);

            return(treeSourceFromInput);
        }
        public static MetadataInfoTreeSource Create(CommandInput commandResource)
        {
            var treeSourceFromInput = new MetadataInfoTreeSource(commandResource.Resource, commandResource.Settings);

            return treeSourceFromInput;
        }