| Предыдущий | Следующий |
| EVENT_E_COMPLUS_NOT_INSTALLED | EVENT_E_CANT_MODIFY_OR_DELETE_UNCONFIGURED_OBJECT |
VFW_E_BUFFER_NOTSET
Что означает результат
VFW_E_BUFFER_NOTSET: Allocator DirectShow ещё не получил пригодный набор параметров буфера, хотя последующая операция уже требует выдачи media samples. Обычно не согласованы количество буферов, их размер или выравнивание.
Что проверить
- До Commit проверьте вызов IMemAllocator::SetProperties и переданные ALLOCATOR_PROPERTIES.
- Рассчитывайте cbBuffer из окончательно согласованного типа мультимедиа; для видео учитывайте stride и высоту, для аудио — block alignment и максимальный размер образца.
- Сравните запрошенные и фактически возвращённые свойства: allocator может скорректировать количество буферов или выравнивание.
- При reconnect не используйте параметры от предыдущего формата, если размер образца изменился.
Диагностика и исправление
Завершите согласование свойств allocator, затем выполняйте Commit и запускайте передачу данных. Фиксированный размер буфера допустим только если он действительно следует из контракта формата.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.