コード例 #1
0
		public override bool Build(DirectShowLib.IPin source, Imint.Media.DirectShow.Binding.IBuild build)
		{
			bool result = false;
			DirectShowLib.IBaseFilter filter = this.Create();
			if (filter.NotNull() && build.Graph.AddFilter(filter, this.Description) == 0)
			{
				foreach (DirectShow.Binding.Filters.Abstract candidate in this.Next)
					if (result = candidate.Build(filter, build))
						break;
			}
			else
			{
				Error.Log.Append(Error.Level.Debug, "Unable to open file.", "DirectShow was unable to open file \"" + this.file + "\".");
				Binding.Exception.GraphError.Check(build.Graph.RemoveFilter(filter));
			}
			return result;
		}
コード例 #2
0
		protected override Imint.Viewer.Cache[] UpdateCaches(Imint.Viewer.Cache[] caches, Kean.Collection.IReadOnlyDictionary<string, object> meta)
		{
			return caches;
		}