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