我正在尝试使用WM Asf编写器过滤器创建输出.wmv文件。这是我的代码。
IBaseFilter * pASFWriter; CoCreateInstance(CLSID_WMAsfWriter,NULL,CLSCTX_INPROC_SERVER,IID_IBaseFilter,(void **)(& pASFWriter));
pGraphBuilder-> AddFilter(pASFWriter,L “的FileWriter”);
IFileSinkFilter * pSink2 = NULL;
pASFWriter->的QueryInterface(IID_IFileSinkFilter,(无效**)及pSink2); pSink2-> SetFileName(OUTFILENAME,NULL);
以上所有都返回S_OK但是没有创建文件。我无法理解为什么会这样?
答案 0 :(得分:0)
您在这里所做的只是创建一个DirectShow过滤器并将其设置为写入文件。在将过滤器连接到为其提供数据并运行图表的其他过滤器之前,不会发生任何事情。在收到第一个有效数据之前,不会创建该文件。
有关详细信息,请参阅this MDSN主题。