Объект читателя
[Функция, связанная с этой страницей, пакет SDK для Windows Media 11, является устаревшей функцией. Он был заменен средства чтения источника и записи приемника. средства чтения источников и записи приемника оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код средства чтения исходного кода и записи приемников вместо пакета SDK для Windows Media 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 | Предоставляет расширенные альтернативные варианты и методы AllocateForStream интерфейса IWMReaderCallbackAdvanced. |
IWMReaderCallback | Предоставляет методы обратного вызова для методов запуска и OpenIWMReader. |
IWMReaderCallbackAdvanced | Предоставляет методы обратного вызова для методов интерфейса IWMReaderAdvanced. |
IWMStatusCallback | Требуется, когда сведения о состоянии должны быть переданы в хост-приложение. |
Связанные разделы