Коды ошибок и успешного выполнения DirectShow
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
В этом разделе перечислены коды возврата HRESULT , определенные для DirectShow. Обратите внимание, что API DirectShow могут возвращать другие значения HRESULT , не показанные здесь. Дополнительные значения HRESULT см. в разделе Коды ошибок COM.
В следующей таблице приведены коды ошибок и успешного выполнения DirectShow в числовом порядке. Коды возврата, начинающиеся с VFW_S_ указывают на успешное выполнение. Операция может частично завершиться успешно и по-прежнему иметь успешное возвращаемое значение. Например, VFW_S_SOME_DATA_IGNORED указывает, что файл был отрисован путем игнорирования некоторых его параметров свойств. Коды возврата, начинающиеся с VFW_E_ указывают на ошибку.
Эти значения определяются в файле заголовка Vfwmsgs.h.
Констант/значение | Описание |
---|---|
|
Достигнут конец списка; больше нет элементов в списке. (Разработчики фильтров. Ожидается, что метод CBasePin::GetMediaType вернет это значение.) |
|
Попытка добавить фильтр с повторяющимся именем выполнена успешно с измененным именем. |
|
Переход состояния не завершен. |
|
Некоторые потоки имеют неподдерживаемый формат. |
|
Файл содержит некоторые параметры свойств, которые не использовались. |
|
Некоторые подключения завершились сбоем и были отложены. |
|
Указанный ресурс больше не требуется. |
|
Файл GraphEdit (GRF) был загружен успешно, но по крайней мере два контакта были подключены с использованием другого типа мультимедиа, чем тип носителя, хранящийся в файле GraphEdit. |
|
Не удается воспроизвести видеопоток: не удалось найти подходящий отрисовщик. |
|
Не удается воспроизвести аудиопоток: не удалось найти подходящий отрисовщик. |
|
Не удается воспроизвести видеопоток: формат "RPZA" не поддерживается. |
|
Возвращаемое значение должно быть оценено. Его точность не может быть гарантирована. |
|
Этот код успешного выполнения зарезервирован для внутренних целей в DirectShow. |
|
Поток отключен. |
|
Фильтр активен, но не может доставить данные. См. раздел IMediaFilter::GetState. |
|
У примера было время начала, но не время остановки. В этом случае возвращаемое время остановки равно времени начала плюс единица. |
|
Предварительный просмотр был отрисован с помощью фильтра Smart Tee, так как фильтр захвата не имеет закрепления предварительного просмотра. |
|
Текущий заголовок не является последовательным набором глав (PGC), поэтому сведения о времени могут быть не непрерывными. |
|
Аудиопоток не содержит достаточно сведений для определения содержимого каждого канала. |
|
Операция поиска на DVD не была точной. |
|
Указанный тип носителя недопустим. |
|
Указанный подтип мультимедиа недопустим. |
|
Этот объект можно создать только как агрегированный объект. |
|
Состояние перечисляемого объекта изменилось и теперь не соответствует состоянию перечислителя. Удалите все данные, полученные в результате предыдущих вызовов перечислителя, а затем обновите перечислитель, вызвав метод Reset перечислителя. |
|
По крайней мере один из контактов, участвующих в операции, уже подключен. |
|
Эта операция не может быть выполнена, так как фильтр активен. |
|
Один из указанных контактов не поддерживает типы мультимедиа. |
|
Между этими контактами нет общего типа носителя. |
|
Два контакта одного направления не могут быть соединены. |
|
Невозможно выполнить операцию, так как контакты не подключены. |
|
Пример распределителя буфера недоступен. |
|
Произошла ошибка во время выполнения. |
|
Буферное пространство не задано. |
|
Буфер недостаточно велик. |
|
Указано недопустимое выравнивание. |
|
Распределитель не был зафиксирован. См. раздел IMemAllocator::Commit. |
|
Один или несколько буферов по-прежнему активны. |
|
Не удается выделить образец, если распределитель неактивен. |
|
Не удается выделить память, так как размер не задан. |
|
Не удается заблокировать синхронизацию, так как часы не определены. |
|
Не удалось отправить сообщения о качестве, так как не определен приемник качества. |
|
Требуемый интерфейс не реализован. |
|
Объект или имя не найдены. |
|
Не удалось найти сочетание промежуточных фильтров для подключения. |
|
Не удалось найти сочетание фильтров для отрисовки потока. |
|
Не удалось динамически изменять форматы. |
|
Цветовая клавиша не задана. |
|
Текущее закрепление не использует транспорт IOverlay . |
|
Текущее подключение не использует транспорт IMemInputPin . |
|
Установка цветового ключа будет конфликтовать с уже заданной палитрой. |
|
Установка палитры будет конфликтовать с уже заданным цветовым ключом. |
|
Соответствующий ключ цвета недоступен. |
|
Палитра недоступна. |
|
В display не используется палитра. |
|
Слишком много цветов для текущих параметров отображения. |
|
Состояние изменилось во время ожидания обработки примера. |
|
Не удалось выполнить операцию, так как фильтр не остановлен. |
|
Не удалось выполнить операцию, так как фильтр не приостановлен. |
|
Не удалось выполнить операцию, так как фильтр не выполняется. |
|
Не удалось выполнить операцию, так как фильтр находится в неправильном состоянии. |
|
Время начала образца — это время окончания образца. |
|
Предоставленный прямоугольник недопустим. |
|
Этот контакт не может использовать указанный тип носителя. |
|
Этот пример не может быть отрисован. |
|
Этот пример не может быть отрисован, так как достигнут конец потока. |
|
Не удалось добавить фильтр с повторяющимся именем. |
|
Истекло время ожидания. |
|
Недопустимый формат файла. |
|
Список уже исчерпан. |
|
Диаграмма фильтра является циклической. |
|
Обновления не допускаются в этом состоянии. |
|
Предпринята попытка поместить команду в очередь в течение определенного времени в прошлом. |
|
Команда в очереди уже отменена. |
|
Не удается отобразить файл, так как он поврежден. |
|
Ссылка на рекомендации IOverlay уже существует. |
|
Полноэкранные режимы недоступны. |
|
Эту рекомендацию нельзя отменить, так как она не была успешно задана. |
|
Полноэкранный режим недоступен. |
|
Не удается вызвать методы IVideoWindow в полноэкранном режиме. |
|
Тип носителя этого файла не распознается. |
|
Не удалось загрузить исходный фильтр для этого файла. |
|
Файл оказался неполным. |
|
Недопустимый номер версии файла. |
|
Этот файл поврежден: он содержит недопустимый идентификатор класса. |
|
Этот файл поврежден: он содержит недопустимый тип мультимедиа. |
|
Метка времени для этого примера не задана. |
|
Для этого примера не задано время мультимедиа. |
|
Формат времени мультимедиа не выбран. |
|
Не удается изменить баланс, так как звуковое устройство является моноауральным. |
|
Не удается воспроизвести видеопоток: не удалось найти подходящий распакователь. |
|
Не удается воспроизвести аудиопоток: отсутствует звуковое оборудование или оборудование не поддерживается. |
|
Не удается воспроизвести видеопоток: формат "RPZA" не поддерживается. |
|
DirectShow не может воспроизводить видео MPEG на этом процессоре. |
|
Не удается воспроизвести аудиопоток: аудиоформат не поддерживается. |
|
Не удается воспроизвести видеопоток: формат видео не поддерживается. |
|
DirectShow не может воспроизвести этот видеопоток, так как он выходит за рамки ограниченного стандарта. |
|
Не удается выполнить запрошенную функцию для объекта, который отсутствует в графе фильтра. |
|
Не удается получить доступ к формату времени для объекта . |
|
Не удалось подключиться, так как поток доступен только для чтения, а фильтр изменяет данные. |
|
Буфер недостаточно заполнен. |
|
Не удается воспроизвести файл: формат не поддерживается. |
|
Контакты не могут подключаться, так как они не поддерживают один и тот же транспорт. Например, фильтру вышестоящий может потребоваться интерфейс IAsyncReader, а нижестоящему фильтру — IMemInputPin. |
|
Устройство не может правильно прочитать видео cd или данные повреждены. |
|
В этом разрешении и количестве цветов недостаточно видеопамяты. Снижение разрешения может помочь. |
|
Не удалось выполнить согласование подключения к видеопорту. |
|
Либо DirectDraw не установлен, либо возможности карта видео не подходят. Убедитесь, что дисплей не находится в 16-цветовом режиме. |
|
Оборудование видеопорта недоступно или оборудование не отвечает. |
|
Оборудование для записи не доступно или оборудование не отвечает. |
|
В настоящее время эта пользовательская операция запрещена содержимым DVD. |
|
Эта операция не разрешена в текущем домене. |
|
Запрошенная кнопка недоступна. |
|
DVD-Video граф воспроизведения еще не создан. |
|
DVD-Video построение графа воспроизведения завершилось сбоем. |
|
DVD-Video граф воспроизведения не удалось создать из-за недостатка декодеров. |
|
Номер версии DirectDraw не подходит. Обязательно установите DirectX 5 или более поздней версии. |
|
Не удалось включить защиту копирования. |
|
Истекло время ожидания команды Seek. |
|
Операция не может быть выполнена с текущей скоростью воспроизведения. |
|
Указанное меню DVD не существует. |
|
Указанная команда была отменена или больше не существует. |
|
Сведения о состоянии DVD-диска содержат неправильный номер версии. |
|
Сведения о состоянии DVD повреждены. |
|
Сведения о состоянии DVD с другого диска, а не с текущего диска. |
|
Регион несовместим с диском. |
|
Запрошенные атрибуты не существуют. |
|
Невозможно выполнить операцию, так как отсутствует цепочка программ GoUp (PGC). |
|
Операция запрещена, так как родительский уровень слишком низок. |
|
DVD Навигатор не находится в режиме караоке. |
|
Пошаговое выполнение кадра не поддерживается. |
|
Запрошенный поток отключен. |
|
Для операции требуется номер заголовка, но текущий заголовок отсутствует. Эта ошибка может возникать, если DVD-навигатор не находится в домене Title или в домене меню "Набор заголовков видео" (VTSM). |
|
Указанный путь не является допустимым DVD-диском. |
|
Не удалось завершить операцию возобновления, так как отсутствуют сведения о возобновлении. |
|
Закрепление уже заблокировано в вызывающем потоке. |
|
Закрепление уже заблокировано в другом потоке. |
|
Использование этого фильтра ограничивается программным ключом. Приложение должно разблокировать фильтр. |
|
Отрисовщик смешанного видео (VMR) не находится в режиме микширования. Вызовите IVMRFilterConfig::SetNumberOfStreams (VMR-7) или IVMRFilterConfig9::SetNumberOfStreams (VMR-9). |
|
Приложение еще не предоставило фильтр VMR с допустимым объектом распределителя и докладчика. |
|
VmR не удалось найти оборудование для дескрифровки на текущем устройстве отображения. |
|
VMR не удалось найти оборудование, поддерживающее элементы управления ProcAmp на текущем устройстве отображения. |
|
Аппаратный декодер использует расширения видеопорта (VPE), которые несовместимы с фильтром VMR-9. |
|
Текущее устройство отображения не поддерживает протокол ЗАЩИТЫ вывода содержимого (COPP); или виртуальная машина еще не подключена к устройству отображения. |
|
Запись реестра повреждена. |
|
Навигатор DVD не может завершить запрошенную операцию, так как другая операция все еще находится в состоянии ожидания. |
|
DVD-навигатор не может создать граф воспроизведения DVD, так как граф содержит более одного отрисовщика видео. |
|
DVD-навигатор не может добавить фильтр расширенного видео отрисовщика (EVR) к графу фильтра, так как граф уже содержит отрисовщик видео. |
|
Видеовыход DVD не имеет правильного разрешения. |
|
Указанный параметр кодека имеет линейный диапазон, а не перечисляемый список. |
|
Указанный параметр кодека имеет перечисляемый диапазон значений, а не линейный. |
|
Указанный параметр кодека не имеет значения по умолчанию. |
|
Указанный параметр кодека не имеет текущего значения. |
|
Указанный идентификатор свойства не поддерживается. |
|
Указанный набор свойств не поддерживается. |
В дополнение к значениям, перечисленным ранее, Службы редактирования DirectShow определяют следующие значения HRESULT .
Констант/значение | Описание |
---|---|
|
Часть графа отрисовки была удалена. Приложение должно перестроить его. |
|
Объект не содержится в временная шкала. |
|
Операция завершилась сбоем, так как проект не был успешно отрисован. |
|
Модуль отрисовки не инициализирован. |
|
Не удается определить запрошенное значение. |
|
Объект временная шкала отсутствует. |
Требования
Требование | Значение |
---|---|
Заголовок |
|