Как использовать MFT в приложении Windows без использования конвейера медиапреобразования

Я новичок в программировании средств массовой информации и Windows.

Это может выглядеть очень глупым вопросом, но я нигде не получил четкого ответа.

Мое приложение для захвата экрана, масштабирования, кодирования и отправки данных в сеть. Я ищу, чтобы улучшить производительность моего конвейера. поэтому я хочу изменить некоторые промежуточные библиотеки, такие как библиотеки масштабирования или кодирования.

Когда я много занимаюсь поиском лучшего варианта масштабирования и кодирования, я получаю некоторое MFT (мультимедийное фундаментальное преобразование), например.Видеопроцессор MFT а также Видеокодер H.264 MFT.

В моем приложении уже реализован конвейер, и я не хочу менять полную архитектуру.

мы можем напрямую использовать MFT в качестве библиотеки и добавить в мой проект? или я должен построить полный трубопровод, источник и приемник.
По архитектуре Media Foundation MFT является промежуточным блоком. Это требует IMFTransform :: GetInputStreamInfo и IMFTransform :: GetOutputStreamInfo.
Есть ли способ вызвать прямой API MFT для выполнения (масштабирование и кодирование) с созданием полного конвейера?

Пожалуйста, предоставьте ссылку, если какой-либо подобный вопрос уже задавался.

0

Решение

Да, вы можете создать это IMFT-преобразование напрямую и использовать его отдельно от конвейера. Это очень типичная модель использования для кодера MFT.
Вам нужно будет настроить типы носителей ввода / вывода, запустить потоковую передачу, подать кадры ввода и захватить выходные кадры.

В зависимости от того, является ли ваше преобразование синхронным или асинхронным (которое может отличаться в зависимости от реализации вашего MFT в HW или SW), вам может понадобиться использовать basic (https://msdn.microsoft.com/en-us/library/windows/desktop/aa965264(v=vs.85).aspx) или асинхронно (https://msdn.microsoft.com/en-us/library/windows/desktop/dd317909(v=vs.85).aspx) модель обработки.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]