| Предыдущий | Следующий |
| MF_E_ALREADY_INITIALIZED | MF_E_LATE_SAMPLE |
MF_E_BANDWIDTH_OVERRUN
Что означает MF_E_BANDWIDTH_OVERRUN
MF_E_BANDWIDTH_OVERRUN (0xC00D4651) — Объём переданных данных превышает заданный битрейт и размер буферного окна.
Контекст результата 0xC00D4651 — подсистема «COM/WinRT» и область «контракт вызываемого interface, аргументы и state объекта». Условие «объём переданных данных превышает заданный битрейт и размер буферного окна» указывает на тему «mf, bandwidth, overrun», а не на общий отказ всего компонента.
Что проверить и как подтвердить исправление
Первый шаг — сопоставьте первый отказ с фактическими параметрами операции. Когда при 0xC00D4651 система сообщает «объём переданных данных превышает заданный битрейт и размер буферного окна», воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.
Для воспроизведения 0xC00D4651 сохраните IID и method, thread/apartment, argument values, object state и исходный HRESULT. По теме «mf, bandwidth, overrun» для 0xC00D4651 сравните эти данные с исправным запуском до очистки журналов или пересоздания объекта.
Коррекция для 0xC00D4651 должна быть предметной: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. Для 0xC00D4651 и сообщения «объём переданных данных превышает заданный битрейт и размер буферного окна» общий сброс допустим лишь как контроль, но не как доказательство причины.
Считайте исправление подтверждённым только после устойчивого повтора исходного сценария без результата 0xC00D4651 и без обхода штатных проверок.
Документация для результата 0xC00D4651: ASF bandwidth-overrun rules · ProcessSample return values · leaky-bucket configuration.
Нужно найти другой код? Найти другой код состояния или ошибки.