Я смотрю на проблему обработки изображений для полу-реального обнаружения определенных сценариев. Моя цель - сделать так, чтобы живое видео появлялось в виде кадров Motion JPEG в моем коде Java каким-то образом .
Я знаком с Java Media Framework и, к сожалению, думаю, мы можем считать это фактически мертвым API. Я также знаком с коробками Axis и, хотя мне действительно нравится их решение, я был бы признателен за любые критические отзывы по моим конкретным вопросам, представляющим интерес.
Вот как я определяю «лучшее» для целей этого обсуждения:
- Задержка - если я управляю камерой с помощью этого видеопотока, я бы хотел, чтобы задержка в обоих направлениях составляла менее 100 миллисекунд, если это возможно. Это измеряется как время между моим входом управления и временем, когда я вижу видимые изменения. РЕДАКТИРУЙТЕ спустя некоторое время: еще одна вещь, которую нужно иметь в виду, - то, что управление камерой, вероятно, будет комбинацией ручного и автоматического (триггеры событий). Нам нужно сразу увидеть эти фотографии, даже если высококачественный канал архивируется отдельно.
- Стоимость - бесплатно / с открытым исходным кодом лучше, чем не бесплатно.
- Настраиваемые параметры кодека - мне нужно иметь возможность настроить кодек для определенных ситуаций. Иногда высокоскоростной поток с низким разрешением на самом деле легче обрабатывать.
- «Интеграция» с Java - насколько сложно подключить это решение к моему коду? Я отправляю пакеты через сокет? Переходя по URL? Установка комбинаций Direct3D / JNI?
- Windows / Linux / оба? - Я бы предпочел решение, не зависящее от операционной системы, потому что мне приходится предлагать несколько версий ОС, но может быть решение, оптимальное для одного, а не для другого.
ПРИМЕЧАНИЕ. Мне известны другие кодеки захвата изображений / видео, и этот вопрос не является предметом обсуждения. Я конкретно не заинтересован в потоковых API (например, MPEG4) из-за потери точности кадра. Однако, если есть решение моего вопроса, которое доставляет другой поток данных с точностью до кадра, пожалуйста, включите.
В продолжение этого вопроса: на данный момент я настоятельно склонен покупать устройства, такие как Axis видеокодеры , вместо того, чтобы пытаться захватить видео в программном обеспечении или на ПК напрямую. Однако, если у кого-то есть альтернативы, я бы хотел их услышать.