| Предыдущий | Следующий |
| EVENT_E_CANT_MODIFY_OR_DELETE_CONFIGURED_OBJECT | EVENT_E_INVALID_EVENT_CLASS_PARTITION |
VFW_E_BADALIGN
Что означает VFW_E_BADALIGN
VFW_E_BADALIGN означает, что при согласовании DirectShow allocator задано недопустимое или невыполнимое требование к выравниванию buffer.
Что проверить
ALLOCATOR_PROPERTIES.cbAlignдо и после negotiation.- Какой filter первым запросил это alignment.
- Не передано ли нулевое, не поддерживаемое или неверно вычисленное значение.
- Media type и allocator, между которыми возникло несогласование.
Как локализовать
Сохраните свойства allocator на обоих концах connection и сравните требования upstream/downstream filter. Не лечите эту ошибку увеличением общего размера buffer: size и alignment — разные условия. Для собственного filter-а проверьте реализацию DecideBufferSize/SetProperties и убедитесь, что фактически возвращённые свойства действительно принимаются. После исправления повторите graph connection и подтвердите, что allocator согласован без изменения media type.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.