基于C++ DirectShow实现AVI转WMV:GraphEdit成功但代码无输出
求助:DirectShow COM C++实现AVI转WMV无输出文件+内存泄漏问题
我正在开发一款工具,核心功能是将AVI格式的视频文件转换为WMV格式并保存到本地硬盘。之前在GraphEdit里已经成功搭建出能完成转换的过滤器图表,流程完全没问题,但自己写对应的COM C++代码时却卡壳了:
- 所有DirectShow API调用的返回值都是正常的(比如
S_OK),但运行结束后硬盘上就是没有生成目标WMV文件 - 另外代码还存在内存泄漏的情况,暂时没找到泄漏的源头
以下是我的代码开头片段:
#include <dshow.h> // 后续的过滤器图表创建、连接、媒体控制等相关代码
我已经检查过文件输出路径的权限、WMV编码器的配置,还有过滤器之间的连接状态,看起来都没问题,但就是出不了文件。同时内存泄漏的问题也让我头疼,有没有熟悉DirectShow的大佬能帮忙分析下可能的问题点?
内容的提问来源于stack exchange,提问作者Iman Abdollahzadeh
相关产品推荐
相关产品推荐

