Что означает код HRESULT 0xC00D1BD4 (NS_E_INVALID_FOLDDOWN_COEFFICIENTS)?

 
Предыдущий Следующий
NS_E_SOURCE_CANNOT_LOOP NS_E_DRMPROFILE_NOTFOUND

NS_E_INVALID_FOLDDOWN_COEFFICIENTS

Граница сбоя в объектной модели Encoder

Практический смысл NS_E_INVALID_FOLDDOWN_COEFFICIENTS (0xC00D1BD4) не сводится к стандартному сообщению: код указывает на коэффициенты сведения многоканального звука находятся вне допустимого интервала dB в области «параметры аудиопотока и audiences».

Аудиочасть профиля Encoder объединяет формат источника, codec, режим bitrate, средний и пиковый bitrate, ограничения buffer и схему каналов в сценарии «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB». Несколько audiences добавляют правила согласованности между audiences к ограничениям отдельных полей для состояния «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB». В сеансе, возвращающем NS_E_INVALID_FOLDDOWN_COEFFICIENTS, именно здесь проверяется условие «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB».

Данные, отделяющие этот код от ошибки оболочки

Кодек может быть установлен и всё же отклонять выбранное сочетание формата и битрейта; наличие кодека и допустимость профиля — разные проверки в сеансе, возвращающем NS_E_INVALID_FOLDDOWN_COEFFICIENTS. Например, линейные коэффициенты усиления напрямую записываются в поле, ожидающее децибелы. Сохраните NS_E_INVALID_FOLDDOWN_COEFFICIENTS до того, как уровень интерфейса преобразует результат в общую ошибку запуска, захвата или профиля.

ПолеЧто сохранить
Решающие значениякаждый коэффициент в dB, отображение каналов и схема источника
Объект, вернувший ошибкуисходный WAVEFORMATEX, индекс audience, индексы audio codec и format, режим VBR, средний/пиковый bitrate, размер buffer, число каналов, язык и целевую совместимость
Сопоставление с сеансомто же поколение source group, индекс audience, идентичность объекта и последовательность callbacks, в которой был получен NS_E_INVALID_FOLDDOWN_COEFFICIENTS
Данные нижнего уровняпервый HRESULT COM, драйвера, файловой системы или codec, полученный до того, как Encoder сопоставил условие с NS_E_INVALID_FOLDDOWN_COEFFICIENTS
Контролируемое сравнениезаведомо исправный сеанс, в котором изменяется только настройка границы «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB»

Как интерпретировать следующее измерение

НаблюдениеКак это интерпретировать
Наблюдение, подтверждающее этот результатРешающие данные: каждый коэффициент в dB, отображение каналов и схема источника. Они подтверждают условие «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB» в том же поколении объекта.
Наблюдение, указывающее на более ранний сбойЗафиксированные значения удовлетворяют правилу этой границы, но source, драйвер, COM activation или файловая операция раньше возвращает другой HRESULT для состояния «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB».
Наблюдение, указывающее на более поздний сбойEncoder проходит эту границу («коэффициенты сведения многоканального звука находятся вне допустимого интервала dB»), но затем codec, archive или broadcast sink завершается ошибкой на следующем этапе.
Проверка после исправленияВнесите одно изолированное изменение: ограничить или пересчитать коэффициенты в диапазоне от -144 до 0 dB, сохранив назначение каналов. После этого исходный вызов должен пройти ту же контрольную точку в сценарии «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB».

Практическое влияние NS_E_INVALID_FOLDDOWN_COEFFICIENTS ограничен переходом «audio stream and audience settings», которому принадлежит условие «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB». Для NS_E_INVALID_FOLDDOWN_COEFFICIENTS, сам по себе этот результат не доказывает повреждение всех входных данных, отсутствие всех кодеков или неработоспособность всей установки Windows Media. В показательном случае, когда линейные коэффициенты усиления напрямую записываются в поле, ожидающее децибелы, сохраните первый неуспешный вызов и идентификатор его объекта, чтобы более поздняя ошибка-оболочка не заменила данные о границе invalid folddown coefficients.

Как интерпретировать следующее измерение

  1. Зафиксируйте 0xC00D1BD4, NS_E_INVALID_FOLDDOWN_COEFFICIENTS, версию Encoder и точный вызов API или обращение к свойству, вернувшее ошибку.
  2. Экспортируйте текущую конфигурацию .wme или .prx конфигурацию, затем зафиксируйте каждый коэффициент в dB, отображение каналов и схема источника.
  3. Для NS_E_INVALID_FOLDDOWN_COEFFICIENTSпроверьте предварительное условие настроек аудиопотока и аудиторий, не меняя одновременно источник, профиль и выходной приёмник.
  4. Выполните одно контролируемое сравнение, изменив только это условие: ограничить или пересчитать коэффициенты в диапазоне от -144 до 0 dB, сохранив назначение каналов.
  5. После изменения пересоздайте затронутый объект Encoder; не предполагайте, что существующий graph автоматически отбросил прежнее состояние invalid folddown coefficients.

Осторожно интерпретируйте соседние результаты

РезультатПочему это другая граница
NS_E_INVALID_AUDIO_BUFFERMAXВнесите одно изолированное изменение: ограничить или пересчитать коэффициенты в диапазоне от -144 до 0 dB, сохранив назначение каналов. После этого исходный вызов должен пройти ту же контрольную точку в сценарии «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB».
NS_E_INVALID_AUDIO_PEAKRATE_2peak bitrate аудио не превышает настроенный средний bitrate, когда этого требует constrained VBR
NS_E_INVALID_AUDIO_PEAKRATEпиковый аудиобитрейт находится вне допустимого диапазона кодека или режима

Устранение и проверка

Непосредственное исправление этого случая — ограничить или пересчитать коэффициенты в диапазоне от -144 до 0 dB, сохранив назначение каналов. Пересоздайте соответствующий source group, profile или output object, повторите ту же операцию и убедитесь, что первый неуспешный HRESULT больше не возникает на контрольной точке invalid folddown coefficients.

Не меняйте codec одновременно с исправляемым полем профиля: сначала сохраните отклонённые значения и подтвердите результат на том же codec на границе «коэффициенты сведения многоканального звука находятся вне допустимого интервала dB». Это позволяет повторно проверить тот же сеанс с NS_E_INVALID_FOLDDOWN_COEFFICIENTS без потери исходных диагностических данных.

Ссылки для границы NS_E_INVALID_FOLDDOWN_COEFFICIENTS — граница


Нужно найти другой код? Найти другой код состояния или ошибки.