c++ - 问题\如何激活 Elecard Direct Show Decoder 过滤器

标签 c++ c

我已从 Elecard 为其 AVC\H264 解码器购买了许可证

按照该代码:

HRESULT DShowPlayer::ActivateFilter(IBaseFilter *filter)
{

    static const GUID KEY_GUID = { 0xb9d44b32, 0xd34a, 0x11e8, { 0x88, 0x16,  0x10 , 0x20 ,0xFB ,0x45 ,0x87, 0x53 } };

    HRESULT hr = S_OK;

    IModuleConfig* IMC;
    hr = filter->QueryInterface(&IMC);
    if (SUCCEEDED(hr))
    {    
        hr = IMC->SetValue(&KEY_GUID, NULL);
        IMC->Release();
    }
    return hr;

}

我正在尝试激活我的过滤器(当然上面的数字已更改) 在将 Elecard 解码器过滤器添加到图表后,我调用该函数。

我正在获取

的 hr
hr = IMC->SetValue(&KEY_GUID, NULL);

无效指针

是否有人通过代码激活Elecard解码器。

顺便说一句,通过模块配置检查器激活过滤器按预期工作

谢谢!

最佳答案

抱歉,我刚刚输入了错误的 UUID 输入不正确的 GUID 会导致指针错误

关于c++ - 问题\如何激活 Elecard Direct Show Decoder 过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56648186/

相关文章:

c++ - 自由事件。使用线程支持配置 event_base

c - 无法将 C 程序变量绑定(bind)到 SQL Server 中的日期时间类型列

c++ - 选择一个随机方 block 并生成一个随机数

c - Scanf 不接受 double 类型的输入

c++ - 在 Qt 项目中使用 STXXL

c++ - 以系统 native 形式获取可执行路径

c++ - 当前面有元音时,代码不会将大写字母转换为小写字母

C++自动内存: When is it deallocated?

有人能帮我找出C语言中的逻辑错误吗?我正在尝试 fscanf 到一个数组和一个变量。

c - 如何将十六进制数字打印到文件中?