Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Функция, связанная с этой страницей, Windows Media Format 11 SDK, является устаревшей функцией. Он был заменён на средство чтения источника и средство записи приемника . средства чтения источников и записи приемника оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код средства чтения исходного кода и записи приемников вместо пакета SDK для Windows Media 11, когда это возможно. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Существует два способа создания видеопотоков с неквадратными пикселями, которые будут правильно отображаться в проигрывателе Windows Media. Первый метод включает настройку атрибутов уровня потока в заголовке файла. Второй способ включает добавление расширения блока данных в поток профиля, а затем установку значения для этого расширения в каждой записи.
Использование атрибутов заголовка уровня потока для задания пропорций пикселей
- Настройте объект записи. Дополнительные сведения см. в создании файлов ASF.
- Создайте или загрузите профиль с одним или несколькими видеопотоками. Дополнительные сведения см. в разделе Использование профилей с приложением Writer.
- Вызов IWMWriter::SetProfile. (Всегда вызывайте этот метод перед настройкой атрибутов заголовка.)
- Вызовите QueryInterface, чтобы получить интерфейс IWMHeaderInfo3 и дважды вызовите AddAttribute, чтобы добавить AspectRatioX и AspectRatioY в качестве атрибутов уровня видеопотока. Эти атрибуты являются значениями DWORD.
- Напишите файл.
Использование расширений единиц данных для задания пропорций пикселей
перед написанием:
- Настройте объект записи. Дополнительные сведения см. в написании файлов ASF.
- Создайте или загрузите профиль с одним или несколькими видеопотоками. Дополнительные сведения см. в разделе о том, как использовать профили с писателем.
- Для каждого потока (любого типа носителя) в профиле вызовите IWMStreamConfig::SetStreamName, чтобы указать уникальное имя. Не давайте двум потокам одинаковое имя.
- Используйте IWMStreamConfig2::AddDataUnitExtension в видеопотоке, чтобы добавить расширение единицы данных для пропорций пикселей.
- Вызов IWMWriter::SetProfile.
- Напишите файл.
при написании:
- Для каждого примера вызовите INSSBuffer3::SetProperty и укажите свойство WM_SampleExtensionGUID_PixelAspectRatio вместе с правильным значением. Значения соотношения сторон записываются как два объединённых двухзначных значения. Например, 16:9 записывается как 1609 или 0x0649. Это всегда 2-байтовое значение.
Связанные разделы