| Предыдущий | Следующий |
| NS_E_EXPECT_MONO_WAV_INPUT | NS_E_RECORDQ_DISK_FULL |
NS_E_INPUT_WAVFORMAT_MISMATCH
Где Encoder возвращает этот результат
0xC00D1BA2 (NS_E_INPUT_WAVFORMAT_MISMATCH) диагностически значимое событие — несколько совместно используемых WAV-источников имеют разные WAVEFORMATEX. Сохраняйте границу, вернувшую этот результат, вместе с исходным callback Encoder или вызовом COM.
Даже установленный codec может отклонить выбранное сочетание формата и bitrate; наличие codec и корректность профиля — разные проверки. Типичный способ получить этот результат: сегменты EDL ссылаются на WAV-файлы с разными частотами дискретизации. Поэтому важнее сохранить первый результат Encoder и поколение объекта, чем более позднее общее сообщение.
Что уже успешно выполнено
Кодек может быть установлен и всё же отклонять выбранное сочетание формата и битрейта; наличие кодека и допустимость профиля — разные проверки в сеансе, возвращающем этот результат. В показательном случае input wavformat mismatch сегменты EDL ссылаются на WAV-файлы с разными частотами дискретизации. Он следует проверять на объекте, сформировавшем ошибку, а не считать общим сбоем кодека или операционной системы.
Снимок состояния, который нужно сохранить
| Поле | Что сохранить |
|---|---|
| Решающие значения | тег формата, число каналов, частота дискретизации, разрядность и block alignment каждого WAV-файла |
| Объект, вернувший ошибку | исходный WAVEFORMATEX, индекс audience, индексы audio codec и format, режим VBR, средний/пиковый bitrate, размер buffer, число каналов, язык и целевую совместимость |
| Сопоставление с сеансом | то же поколение source group, индекс audience, идентичность объекта и последовательность callbacks, в которой был получен этот результат |
| Данные нижнего уровня | первый HRESULT COM, драйвера, файловой системы или codec, полученный до того, как Encoder сопоставил условие с ним |
| Контролируемое сравнение | заведомо исправный сеанс, в котором изменяется только настройка границы «несколько совместно используемых WAV-источников имеют разные WAVEFORMATEX» |
Как интерпретировать следующее наблюдение
| Наблюдение | Как это интерпретировать |
|---|---|
| Наблюдение, подтверждающее он | Решающие данные: тег формата, число каналов, частота дискретизации, разрядность и block alignment каждого WAV-файла. Они подтверждают условие «несколько совместно используемых WAV-источников имеют разные WAVEFORMATEX» в том же поколении объекта. |
| Наблюдение, указывающее на более ранний сбой | Зафиксированные значения удовлетворяют правилу этой границы, но source, драйвер, COM activation или файловая операция раньше возвращает другой HRESULT при проверке «несколько совместно используемых WAV-источников имеют разные WAVEFORMATEX». |
| Наблюдение, указывающее на более поздний сбой | Encoder проходит эту границу («несколько совместно используемых WAV-источников имеют разные WAVEFORMATEX»), но затем codec, archive или broadcast sink завершается ошибкой на следующем этапе. |
| Проверка после исправления | Внесите одно изолированное изменение: до объединения преобразовать входные файлы в один и тот же аудиоформат. После этого исходный вызов должен пройти ту же контрольную точку. |
Практическое влияние он ограничен переходом «audio stream and audience settings», которому принадлежит условие «несколько совместно используемых WAV-источников имеют разные WAVEFORMATEX». Сам по себе он не доказывает повреждение всех входных данных, отсутствие всех кодеков или неработоспособность всей установки Windows Media. В показательном случае, когда сегменты EDL ссылаются на WAV-файлы с разными частотами дискретизации, сохраните первый неуспешный вызов и идентификатор его объекта, чтобы более поздняя ошибка-оболочка не заменила данные о границе input wavformat mismatch.
Близкие HRESULT с другим смыслом
| Результат | Почему это другая граница |
|---|---|
NS_E_EXPECT_MONO_WAV_INPUT | Внесите одно изолированное изменение: до объединения преобразовать входные файлы в один и тот же аудиоформат. |
NS_E_INVALID_VBR_WITH_UNCOMP | режим VBR сочетается с несжатым аудио- или видеопотоком |
NS_E_AUDIO_BITRATE_STEPDOWN | порядок аудиобитрейтов не соответствует возрастанию общего битрейта аудиторий |
Исправление на правильном уровне
Целевое исправление — до объединения преобразовать входные файлы в один и тот же аудиоформат. Повтор имеет смысл только после изменения зафиксированного предварительного условия input wavformat mismatch.
Не меняйте codec одновременно с исправляемым полем профиля: сначала сохраните отклонённые значения и подтвердите результат на том же codec. Это позволяет повторно проверить тот же сеанс с ним без потери исходных диагностических данных.
Технические ссылки
- Структура WAVEFORMATEX.
- IWMEncProfile2.VBRMode.
- Добавление аудитории в профиль кодировщика.
- Выбор метода кодирования.
Нужно найти другой код? Найти другой код состояния или ошибки.