Поделиться через


Объект модуля чтения

[Функция, связанная с этой страницей, Windows Media Format 11 SDK, является устаревшей функцией. Он был заменен средством чтения исходного кода и модуля записи приемника. Средство чтения исходного кода и модуль записи приемника оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код по возможности использовал средство чтения исходного кода и модуль записи приемника вместо пакета SDK для Windows Media Format 11. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Объект чтения считывает образцы данных из файлов мультимедиа. Объект средства чтения в настоящее время поддерживает файлы, использующие структуру файлов расширенного системного формата (ASF), а также MP3-файлы. Данные, доставляемые объектом чтения, по умолчанию не сжаты и готовы к отрисовке, хотя при необходимости примеры могут быть доставлены без распаковки. Примеры доставляются асинхронно из объекта чтения; Для их получения необходимо настроить функцию обратного вызова. Для синхронного воспроизведения ASF-файлов используйте объект синхронного средства чтения. Ни средство чтения, ни синхронное средство чтения не отображают никаких данных. Для отображения мультимедиа, полученного из файла, необходимо предоставить собственные процедуры отрисовки.

Если файл содержит закодированный носитель, который можно декодировать с помощью кодека, поддерживаемого объектом чтения, можно управлять форматом несжатых выходных данных. Чтобы изменить формат распакованных выходных данных для потока, необходимо получить объект свойств носителя выходных данных по умолчанию для этого потока, внести в него изменения и переназначить его потоку в средстве чтения. Объекты свойств выходных носителей являются подчиненными объекту средства чтения и должны создаваться только с помощью метода IWMReader::GetOutputProps .

Объект чтения создается функцией WMCreateReader, которая задает указатель на интерфейс IWMReader . Другие интерфейсы объекта чтения можно получить, вызвав метод QueryInterface .

Следующие интерфейсы поддерживаются объектом чтения.

Интерфейс Описание
IReferenceClock Предоставляет доступ к системным часам, используемым средством чтения.
IWMDRMReader Управляет получением лицензий, свойствами DRM и индивидуализацией клиента.
IWMDRMReader2 Предоставляет доступ к лицензиям, которые используют уровни защиты выходных данных (OPL) для указания прав.
IWMHeaderInfo Задает и извлекает сведения о заголовке, включая метаданные, маркеры и данные скрипта.
IWMHeaderInfo2 Извлекает сведения о кодеках, которые использовались для кодирования содержимого в файле. Наследует все методы IWMHeaderInfo.
IWMHeaderInfo3 Поддерживает большие размеры атрибутов, повторяющиеся имена атрибутов и поддержку нескольких языков. Наследует все методы IWMHeaderInfo и IWMHeaderInfo2.
IWMPacketSize Извлекает размер самого большого пакета в файле, загруженном в средство чтения.
IWMPacketSize2 Извлекает размер наименьшего пакета в файле, загруженном в средство чтения.
IWMProfile Предоставляет доступ к сведениям профиля файла, загруженного в средство чтения.
IWMProfile2 Извлекает глобальный уникальный идентификатор (GUID), если он есть, связанный с профилем. Наследует все методы IWMProfile.
IWMProfile3 Поддерживает совместное использование пропускной способности и потоковую информацию о приоритетах в профиле. Наследует все методы IWMProfile и IWMProfile2.
IWMReader Предоставляет базовые возможности чтения файлов, включая такие операции, как открытие, закрытие, запуск, приостановка, возобновление, остановка, а также получение и настройка выходных свойств.
IWMReaderAccelerator Взаимодействует с ускорением видео DirectX.
IWMReaderAdvanced Предоставляет расширенные функции средства чтения, такие как предоставленные пользователем часы, выделение буфера, статистика возврата и уведомления о выборе потока.
IWMReaderAdvanced2 Предоставляет дополнительный диапазон расширенных методов для существующего объекта чтения. Наследует все методы IWMReaderAdvanced.
IWMReaderAdvanced3 Предоставляет расширенный контроль поиска и потоковой передачи. Наследует все методы IWMReaderAdvanced и IWMReaderAdvanced2.
IWMReaderAdvanced4 Предоставляет расширенные возможности чтения, включая поддержку нескольких языков. Наследует все методы IWMReaderAdvanced, IWMReaderAdvanced2 и IWMReaderAdvanced3.
IWMReaderNetworkConfig Управляет параметрами конфигурации сети.
IWMReaderNetworkConfig2 Предоставляет доступ к дополнительным параметрам конфигурации сети. Наследует все методы IWMReaderNetworkConfig.
IWMReaderStreamClock Задает и отменяет таймеры для часов потока и извлекает текущее значение указанных часов потока.
IWMReaderTimecode Предоставляет сведения о диапазонах кода времени SMPTE в файле, загруженном в средство чтения.
IWMReaderTypeNegotiation Проверяет, правильно ли работают изменения выходных свойств потока.

 

Следующие интерфейсы обратного вызова можно реализовать в приложении для отслеживания хода выполнения объекта чтения.

Интерфейс Описание
IWMCredentialCallback Получает учетные данные пользователей и проверяет, есть ли у них разрешение на доступ к удаленному сайту.
IWMReaderAllocatorEx Предоставляет расширенные альтернативы методам AllocateForOutput и AllocateForStream интерфейса IWMReaderCallbackAdvanced .
IWMReaderCallback Предоставляет методы обратного вызова для методов Start и OpenIWMReader.
IWMReaderCallbackAdvanced Предоставляет методы обратного вызова для методов интерфейса IWMReaderAdvanced .
IWMStatusCallback Требуется, когда сведения о состоянии должны передаваться в ведущее приложение.

 

Объектов

Чтение ФАЙЛОВ ASF

Объект модуля синхронного чтения