По wiki для Pixel Aspect Ratio:Как получить Pixel Aspect Ratio (PAR) из WMV-ролика в графике DShow?
DAR = SAR x PAR
(Display Aspect Ratio, Storage Aspect Ratio, Pixel Aspect Ratio)
У меня есть WMV видео с 2048x1080 (256: 135) разрешением. Window Media Player (WMP) может извлечь PAR, 15:16
, так что WMP
может отобразить этот клип как 16:9(= 256:135 * 15:16)
.
В настоящее время я могу получить только dwPictAspectRatioX/dwPictAspectRatioY из VIDEOINFOHEADER2 в 256/135. Это значение выглядит как SAR по разрешению или DAR игнорировать PAR.
Как я могу получить PAR
информацию от DShow
?
p.s Я использую [ASF Reader]-[DMO]-[VMR7]
в качестве компонентов фильтра в графе.
PotPlayer также не может прочитать PAR, чтобы он отображал этот клип с форматным соотношением 256:135
вместо 16:9
.
Обновлено,
я узнал, что ASF_Reader_Filter :: IWMHeaderInfo :: GetAttributeByName :: Atrributes.
Существует атрибут AspectRatio X (Y) со следующим значением:
Атрибут AspectRatioX содержит ширину компонента соотношение сторон пикселя для видеопотока.
Я пытаюсь QueryInterface или QueryService через IServiceProvider от чтения ASF фильтр, но он всегда возвращается E_NOINTERFACE.
Еще нужно провести расследование.