将文件名设置为 Lav Splitter Source 过滤器

Set filename to Lav Splitter Source filter

我能够使用 GraphStudio 中的 Lav Splitter Source 过滤器在 234.5.6.7:2000 上渲染 RTP 流。当我添加过滤器时,GraphStudio 要求输入文件名或 URL。这就是我呈现 RTP 流的方式,但是我如何在代码中做到这一点?

对于写文件,我曾经这样做过:

(fileWriter as IFileSinkFilter).SetFilename("c:\a.avi",null);

但它是源过滤器。我应该如何为源过滤器(Lav Splitter Source)设置 filename/URL?

LAV 拆分器(和文件源过滤器)应支持 IFileSourceFilter 接口。所以你只需要做:

(lavSplitter as IFileSourceFilter).Load("c:\a.avi", null); 

您可以在这里使用 URL 代替文件名。您还必须检查和处理 HRESULT 代码 Load().

我应该设置 Load 函数的媒体类型:

AMMEdiaType media = new AMMediaType();
media.majorTpye = MediaType.URLStream;
(lavSplitterSourceFilter as IFileSourceFilter).Load("rtp://234.5.6.7:2000", media);

感谢 Anten Angelov