Мой первый вопрос - почему средство визуализации выбрало это значение (1024), а не другое?Могу ли я получить это программно?
Видео рендерер использует Direct3D текстуру в качестве носителя для изображения.Когда текстура отображается в системную память для обеспечения доступа ЦП к записи, такой расширенный шаг может быть применен из-за особенностей реализации видеооборудования.Вы получаете значение 1024 посредством согласования динамического типа мультимедиа, как описано в Обработка изменений формата с помощью Video Renderer .
Ваш фильтр преобразования должен обрабатывать такие обновления, если вы хотите, чтобы он мог подключатьсянепосредственно к видео-рендереру.
Как правило, вы не заинтересованы в получении этого расширенного значения шага, потому что именно то, которое вы получаете через обновление типа мультимедиа, должно использоваться, и вы должны его принять.
Когда я заменяю LAV-декодер своим фильтром для преобразования RGB24 / YV12, рендерер показывает мне смещенное изображение, хотя все параметры такие же, как и для первого графика ... Почему?
Ваш фильтр не обрабатывает правильное обновление шага.
... Я заметил, что VIDEOINFOHEADER2 имеет установленный флаг чередования dwInterlaceFlags.Поэтому мой следующий вопрос: мне нужно добавить чересстрочную развертку в мой фильтр для нормальной работы рендерера?
У вас нет чересстрочного видео здесь.Проблема не связана с чересстрочным видео.