ADTF нет медиа-описания для типа структуры "ошибка - PullRequest
1 голос
/ 08 апреля 2019

Объяснение:

Мой ADTF-фильтр получает в качестве входных данных два двойных значения, а его вывод представляет собой структуру. Структура содержит несколько двойных значений.

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. Но пока ничего не работает.

1 Ответ

1 голос
/ 09 апреля 2019

Предупреждение (без ошибок) точно описывает, чего не хватает: На выходном выводе, который вы используете для своей структуры, не задано описание носителя.

Полагаю, вы используете что-то подобное в своем методе 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, например

...