Что это значит, когда в GraphStudio нет ошибки при подключении два фильтра, но они не были подключены -- c++ поле с участием directshow пол Связанный проблема

What does it mean when in graphstudio there is no error when connection two filter but they have not been connected


0
vote

проблема

русский

Когда я пытаюсь подключить два фильтра в GraphStudio, которые не соответствуют, я обычно получаю код ошибки. Однако в моем случае, если я попытаюсь подключить мой фильтр к другому фильтру, нет сообщения об ошибке и Был ли соединение E.g. Между фильтрами нет стрелки.

Вот как фильтры соединяются в соответствии с документацией

Общий контур процесса Connectio N заключается в следующем:

  1. Диспетчер диаграммы фильтра вызывает IPIN :: Connect на выходном контакте, передавая указатель на входной контакт.

  2. Если выходной вывод принимает соединение, он вызывает IPIN :: Cereivecnection на входном контакте.

  3. Если входной PIN-код также принимает соединение, попытка подключения добивается успеха, а контакты подключены.

Использование Visual Studio, я могу заверить, что доходность возврата S_OK

Так что должно быть что-то более папайте только эти 3 шаги, в противном случае он должен работать

Английский оригинал

When I attempt to connect two filters in graphstudio that don't match i get usually an error code. In my case however if i try to connect my filter to another filter there is no error message nor has a connection been made e.g. there is no arrow between the filters.

This is how filters connect according to the documentation

The general outline of the connectio n process is the following:

  1. The Filter Graph Manager calls IPin::Connect on the output pin, passing a pointer to the input pin.

  2. If the output pin accepts the connection, it calls IPin::ReceiveConnection on the input pin.

  3. If the input pin also accepts the connection, the connection attempt succeeds and the pins are connected.

Using Visual Studio i can assure that ReceiveConnection returns S_OK

So there must be something more thant just these 3 steps, otherwise it should work

</div
     
 
 

Список ответов

0
 
vote

PIN-код соединения в основном <код> IGraphBuilder::Connect Вызов с внутренними вызовами IPin::Connect и <код> IPin::ReceiveConnection на имеющиеся фильтры. Вызов добится успеха, если внутренние вызовы добиваются успеха.

Позже, Graphstudio перечисляет контакты и проверяет контакты на этих контактах. Если PIN-код не сообщает о том, что на нем сообщается, то GraphStudio отображает отключение.

Разговаривать с учетом ваших более ранних вопросов о переоценении <Код> Connect Методы, я полагаю, вы неверьте их неправильно: вы не делаете подключение к вашему фильтру / PIN-код, все же вы возвращаете код успеха в качестве статуса операции ,

 

Pin connection is basically a IGraphBuilder::Connect call with internal calls to IPin::Connect and IPin::ReceiveConnection on the filters in question. The call succeeds if the internal calls succeed.

Later on, GraphStudio enumerates pins and checks pin connections on these pins. If a pin does not report anything connected on it, then GraphStudio displays disconnection.

Talking into consideration your earlier questions about overriding Connect methods, I suppose you overrode them wrong: you don't do the connection on your filter/pin, still you return success code as the operation status.

</div
 
 

Связанный проблема

18  Как оценивается оператор «если (A && B)»?  ( How an if a b statement is evaluated ) 
<код> -1 Вопрос в том, что утверждение немедленно сломается, чтобы остальное, если был ложный. Будет б даже оценивать? Я спрашиваю это в том случае, если...

-1  C ++ с использованием класса от заголовка в классе  ( C using a class from a header within a class ) 
У меня есть немного проблемы с классами, используемыми в классах, из файлов заголовка. У меня есть время занятий во времени. Как: <код> #ifndef TIME_H #de...

-1  Qt показывает изображение на 1/4 секунды  ( Qt show an image for 1 4 of a second ) 
Эй, я пробовал несколько раз, чтобы завершить это, используя Uslep или Qt Sleep, когда показывает изображение, но иногда (почти каждый раз) он появляется белы...

7  Как очистить удаленные объекты в C ++  ( How do clean up deleted objects in c ) 
Возможно ли использовать память об удаленных объектах в C ++? Я хочу сделать это, чтобы воспроизвести Coredump в модульном тесте: <код> //Some member variab...

0  Как скопировать файлы из установленного местоположения в изолированное хранение в Windows Phone 8  ( How to copy files from installed location to isolated storage in windows phone 8 ) 
Я разрабатываю приложение для WP8 с помощью Cocos2DX. Я не могу найти функцию копирования, которая помогает мне копировать файлы с установленного местоположен...

0  Установите и получите значение разных участников класса в классе  ( Set and get the value of different class members in a class ) 
Я очень новичок в программировании C ++, и я написал простую классную программу для отображения имени и продолжительности проекта. <код> #include<iostream> ...

-2  Конструкторы ведут себя странным с кодом обработки исключений  ( Constructors behaving strange with exception handling code ) 
Скриншот # 1: Образец (образец & amp;) {...) // Нет ошибки без использования "const" Скриншот № 2: Destructor называется дважды, когда Copy-Constructor не вк...

7  Используйте простой класс C ++ в Android NDK  ( Use a simple c class in android ndk ) 
Я пытаюсь узнать основные основы Android NDK, но я застрял, когда я должен использовать его с классом C ++. Я понимаю, как использовать его с помощью просто...

42  Как я могу легко увидеть график C / C ++ #include? [закрыто]  ( How can i see the c c include graph easily ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> закрыт. Этот вопрос не соответствует Рекомендациям переполнения ...

10  Как я могу обнаружить доступ к файлу в Linux?  ( How can i detect file accesses in linux ) 
У меня есть куча потоков и приложений для обработки данных, которые я иногда нужно шпионить, то есть мне нужно знать, какие файлы они читают. Это в основном, ...

-2  Как писать сортировать с неизвестным аргументом. Не может повторяться с void * /  ( How write sort with unknown argument cant iterate with void ) 
в этом <код> void* ic = b + j * sz; и это <код> void* jc = ic - sz; lines IDE, написание того, что выражение должно быть указателем на полный тип. Мне нужен...

1  Шаблон аргументирован вычет и объединение  ( Template argument deduction and unification ) 
<код> template<typename T> void f1(T t); template<typename T> void f2(const T t); template<typename T> void f3(T& t); template<typename T> void f4(const T...

145  Как определить, является ли строка номер с C ++?  ( How to determine if a string is a number with c ) 
У меня было довольно неприятностей, пытаясь написать функцию, которая проверяет, является ли строка номер. Для игры, которую я пишу, мне просто нужно проверит...

58  Пространства имен в C  ( Namespaces in c ) 
Есть ли способ (ab) использовать препроцессор c для эмуляции пространств имен в c ? Я думаю что-то по этим строкам: <код> #define NAMESPACE name_of_ns ...

0  Использование Pybind11 на MacBook Pro  ( Using pybind11 on macbook pro ) 
Я пытаюсь использовать Pybind11 на MacBook, и я пытаюсь сделать так, как было написано в https://pybind11.readtheDocs.io/en/stable/basics.html я установил C...

Связанный проблема

18  Как оценивается оператор «если (A && B)»? 
-1  C ++ с использованием класса от заголовка в классе 
-1  Qt показывает изображение на 1/4 секунды 
7  Как очистить удаленные объекты в C ++ 
0  Как скопировать файлы из установленного местоположения в изолированное хранение в Windows Phone 8 
0  Установите и получите значение разных участников класса в классе 
-2  Конструкторы ведут себя странным с кодом обработки исключений 
7  Используйте простой класс C ++ в Android NDK 
42  Как я могу легко увидеть график C / C ++ #include? [закрыто] 
10  Как я могу обнаружить доступ к файлу в Linux? 
-2  Как писать сортировать с неизвестным аргументом. Не может повторяться с void * / 
1  Шаблон аргументирован вычет и объединение 
145  Как определить, является ли строка номер с C ++? 
58  Пространства имен в C 
0  Использование Pybind11 на MacBook Pro 



© 2021 www.qaru.top All Rights Reserved. Q&A House все права защищены


Licensed under cc by-sa 3.0 with attribution required.