Сейчас я создаю фильтр преобразования видео, который должен преобразовывать видеокадры в режиме реального времени.
Одним из ключевых требований фильтра является высокая производительность для минимизации количества пропущенных кадров во время преобразования.
Еще одно требование, которое имеет более низкий приоритет, но также и хорошее, должно сделать его кроссплатформенным (как для ПК, так и для мобильных устройств).
Приложение построено на C ++.
Теперь мой вопрос:
существует ли какой-либо API, который является более переносимым и имеет такие же или лучшие характеристики производительности, чем DirectShow? поскольку переносимость DirectShow ограничена только устройствами на базе Windows (ПК и платформы Windows Mobile и CE).
Также я заметил, что, например, использование пользовательского API камеры HTC имеет гораздо лучшую производительность, чем предлагает DirectShow. Если вы хотите проверить это, попробуйте создать фильтр в DirectShow, который будет умножать каждый цвет на 2 и отображать его в режиме реального времени с камеры на экране. Затем сделайте то же самое с API HTC. Повышение производительности почти в 4-5 раз благодаря специфическому API поставщика. Поэтому было бы очень хорошо, если бы библиотека использовала реализацию драйвера для конкретного устройства, так как производительность критична при выполнении этого преобразования на мобильном устройстве (которое составляет около ~ 500 МГц).