public static int GetFilterOutputMax(Filterchain filterchain) { if (filterchain == null) { throw new ArgumentNullException("filterchain"); } var context = new FilterMultiOutputContext { NumberOfOutputsInFilterchain = filterchain.OutputList.Count }; return(filterchain.Filters.Max(f => { if (!(f is IFilterMultiOutput)) { return 1; } return (f as IFilterMultiOutput).OutputCount(context); })); }
public int OutputCount(FilterMultiOutputContext context) { return(NumberOfStreams ?? 2); }