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


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

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

Пакет SDK для формата Windows Media можно использовать для доставки примеров мультимедиа из ASF-файла. Для получения примеров используются два объекта: объект средства чтения и синхронный объект чтения.

Объект средства чтения — это исходный объект для чтения в пакете SDK для формата Windows Media. Объект средства чтения использует асинхронную архитектуру для отправки примеров в приложение. Приложения, созданные с использованием объекта чтения, должны реализовывать функции обратного вызова, которые реагируют на различные сообщения и события, полученные из этой многопотоковой модели. Для ясности в этом разделе объект средства чтения будет называться асинхронным средством чтения.

Синхронный объект средства чтения является новым для этой версии пакета SDK для формата Windows Media. Синхронное средство чтения не использует несколько потоков при обработке примеров из ФАЙЛОВ ASF. Приложение, созданное с использованием синхронного средства чтения, извлекает примеры по запросу, а не дожидается их отправки средством чтения.

При создании приложения для чтения ASF-файлов необходимо выбрать, какой объект чтения следует использовать. Как правило, приложения, предназначенные для доставки содержимого на основе Windows Media, должны создаваться с помощью асинхронного средства чтения, а приложения, предназначенные для редактирования ФАЙЛОВ ASF, должны создаваться с помощью синхронного средства чтения.

В следующей таблице перечислены основные функции обоих объектов чтения. Используйте эту таблицу, чтобы определить, какой объект следует использовать для приложения.

Компонент Асинхронное средство чтения Средство чтения синхронизации
Чтение несжатой выборки по выходному номеру Да Да
Чтение сжатых примеров по номеру потока Да Да
Чтение несжатой выборки по номеру потока Нет Да
Чтение с веб-сайта Да Нет
Чтение метаданных Да Да
Поиск времени презентации Да Да
Поиск кадра Да Да
Поиск маркера Да Нет
Переключение между сжатой и несжатой доставкой примера во время воспроизведения Нет Да
Открытие файлов с помощью интерфейса IStream Да Да

 

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

Section Описание
Работа с выходными данными Описывает, как использовать выходные данные и управлять ими. Применяется к обоим объектам чтения.
Выделение буферов для чтения файлов Описывает, как использовать собственный пул буферов для хранения примеров, доставленных средством чтения или синхронным средством чтения.
Чтение метаданных при воспроизведении Описывает, как воспользоваться преимуществами поддержки метаданных при воспроизведении. Применяется к обоим объектам чтения.
Получение сведений о профиле при воспроизведении Описывает, как получить доступ к сведениям профиля для открытых файлов. Применяется к обоим объектам чтения.
Чтение многоканального звука Описывает, как настроить модуль записи для правильного декодирования многоканального звука.
Отрисовка содержимого Рассматриваются проблемы, связанные с отрисовкой несжатых примеров. Применяется к обоим объектам чтения.
Получение лучшего видео ищет производительность Описывает способы повышения производительности поиска видео.
Чтение файлов с помощью асинхронного средства чтения Описывает, как считывать ASF-файлы с помощью объекта асинхронного средства чтения.
Чтение файлов с помощью синхронного средства чтения Описывает чтение ASF-файлов с помощью синхронного объекта чтения.
Включение ускорения видео DirectX Описывает, как реализовать ускорение видео DirectX для использования функций аппаратного ускорения некоторых видеоадаптеров для декодирования видео.

 

Руководство по программированию

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

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