首页 > 解决方案 > ADTF no mediadescription for struct type "错误

问题描述

解释:

我的 ADTF-Filter 将两个双精度值作为输入,其输出是一个结构。该结构包含一些双精度值。

typedef struct {
    double ValueX; 
    double ValueY; 
    double ValueZ; 
} tStruct;

我的问题:

我想在“信号视图”中查看我的值但是我收到了这个错误:

警告 | 00:00:15:015 | 媒体描述服务:在引脚 'Filter/ValueX/' 上找不到结构类型 '' 的媒体描述。此引脚在 SignalView 中不可用!| media_description_signal_provider.cpp(158) | 12736/8516 | C:\tools\ADTF\2.14.2\bin\adtf_devenv.exe | 好的 | 没有错误 | cMediaManager_plugin

我试过的

我用 MediaDescription Editor 玩了一下,并试图在 adtf 给出的示例中查看它是如何完成的。但到目前为止没有任何效果。

标签: c++adtf

解决方案


警告(无错误)准确描述了缺少的内容:您正在使用结构的输出引脚上没有设置媒体描述。

我猜你在你的 Init 方法中使用了这样的东西:

m_oOutputPin.Create("output", cObjectPtr<IMediaType>(new cMediaType(0, 0)), static_cast<IPinEventSink*> (this));

所以你必须用你的结构来扩展媒体类型的创建:

m_oOutputPin.Create("output", cObjectPtr<IMediaType>(new cMediaType(0, 0, 0, "tStruct")), static_cast<IPinEventSink*> (this));

然后它将被设置并从您的结构中生成。

还请查看演示https://support.digitalwerk.net/adtf/v2/adtf_sdk_html_docs/page_demo_media_desc_coder.html和结构 tSimpleStruct_BE 例如


推荐阅读