![]() |
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]() ![]() ![]() |
|
Helene |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 1.2.2006 Где: Киев Репутация: нет Всего: нет |
Пишу свой фильтр, аналогичный Infinite Tee. Base Classes не использую вообще, т.е. имеется своя реализация IPin, IBaseFilter etc.
Принцип работы фильтра. С точки зрения других фильтров в графе, tee как-будто не существует. Он никак не преобразовывает поток, использует чужие аллокаторы, все, что приходит к нему на вход, он передает на выход. Собственно, в чем проблема. Граф "камера + tee + avi декомпрессор + VMR-9" работает отлично. Граф "камера + avi декомпрессор + tee + VMR-9" нет. Обращение ко входному пину рендерера Receive(aSample) возвращает ошибку VFW_E_SAMPLE_REJECTED. Свойства рендерера говорят, что он не обработал ни один кадр. В чем может быть проблема? |
|||
|
||||
Helene |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 1.2.2006 Где: Киев Репутация: нет Всего: нет |
Проблема решена.
Ее краткая суть: При коннекте декомпрессора и tee-фильтра используется аллокатор, созданный tee. При коннекте tee и рендерера нужно использовать аллокатор, предоставляемый рендерером. После успешного коннекта tee и рендерера соединение декомпрессора и tee нужно передергивать всегда, а у меня было только, если нужно изменить медиа-тип соединения. |
|||
|
||||
![]() ![]() ![]() |
Вы можете найти полезным что... | |
|
|
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |