| Предыдущий | Следующий |
| TPC_E_NO_DEFAULT_TABLET | VFW_E_NO_CLOCK |
VFW_E_SIZENOTSET
Что означает результат
VFW_E_SIZENOTSET: Для allocator не задан допустимый размер буфера, поэтому он не может зарезервировать память для media samples. Код обычно указывает на незавершённое согласование ALLOCATOR_PROPERTIES.
Что проверить
- Проверьте значение cbBuffer после SetProperties и убедитесь, что оно рассчитано для текущего типа мультимедиа.
- Для видеопотока учитывайте фактический stride и высоту кадра, а не только логическую ширину изображения.
- Для аудио учитывайте block alignment и максимальный объём данных, который фильтр помещает в один sample.
- Сопоставьте требования downstream-фильтра с фактическими свойствами, которые allocator вернул после SetProperties.
Диагностика и исправление
Задайте ненулевой размер до Commit. Если формат меняется при переподключении, заново вычисляйте размер вместо использования константы от предыдущего соединения.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
