Определение выходных номеров
[Функция, связанная с этой страницей, Windows Media Format 11 SDK, является устаревшей функцией. Она была заменена средствами чтения источника и модуля записи приемников. Средство чтения источника и модуль записи приемников оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде средство чтения исходного кода и модуль записи приемников вместо пакета SDK для Windows Media Format 11, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Чтобы определить выходные номера для загруженного файла, выполните следующие действия. Эти процедуры идентичны как для асинхронного, так и для синхронного средства чтения. Если имена интерфейсов различаются, синхронные методы чтения перечислены в скобках после методов асинхронного средства чтения.
- Создайте объект средства чтения и загрузите файл для чтения. Дополнительные сведения см. в разделах Создание средства чтения и Открытие файла (или Создание синхронного средства чтения и Открытие файла).
- Получите общее количество выходных данных для файла, вызвав IWMReader::GetOutputCount (или IWMSyncReader::GetOutputCount).
- Циклически перебирайте выходные данные по одному, выполняя следующие действия для каждого из них:
- Получите интерфейс IWMOutputMediaProps для текущих выходных данных с помощью вызова IWMReader::GetOutputProps (или IWMSyncReader::GetOutputProps).
- Получите структуру WM_MEDIA_TYPE выходных данных, выполнив два вызова IWMMediaProps::GetMediaType. Выполните первый вызов, чтобы получить размер структуры, затем выделите для нее память и передайте указатель на выделенную память во втором вызове. Кроме того, можно вызвать IWMMediaProps::GetType, который предоставляет основной тип без необходимости выделять память для структуры WM_MEDIA_TYPE . Вы можете пропустить выходные данные неправильного основного типа.
- Извлеките основной тип и подтип носителя из структуры WM_MEDIA_TYPE . Эти значения хранятся в основных и подтипах элементов данных соответственно.
- Проверьте значение WM_MEDIA_TYPE.formattype. Определяет тип структуры, содержащейся в буфере в WM_MEDIA_TYPE.pbFormat. Дополнительные сведения о типах форматов см. в разделе Типы мультимедиа.
- Выделение памяти для хранения структуры типа, определенного на предыдущем шаге. Скопируйте структуру в выделенную память. Для аудио- и видео эта структура предоставляет важные сведения о том, как должны отображаться данные.
Синхронное средство чтения также предоставляет методы для получения связей между выходными номерами и номерами потоков. Дополнительные сведения см. в разделе Поиск номеров потоков и выходных чисел.
Связанные темы