Как захватить видео с веб-камеры (в Java)?
Я хочу разработать приложение на java для захвата видео с веб-камеры и сохранения его в определенном месте. Может кто-нибудь предоставить мне рабочий код?
Какой тип (usb,ip и т. Д.) Веб-камеры лучше всего подходит для разработки приложения.
Пожалуйста, помогите мне. как действовать?
3 ответа
Проверьте решение Дэвида, используя JMF: http://www.mutong.com/fischer/java/usbcam/
Я бы порекомендовал использовать проект захвата веб-камеры (я автор). Существует пример того, как записывать видео с устройства веб-камеры - вы можете найти его здесь. Этот проект может обрабатывать как встроенные камеры, так и устройства, подключенные к USB или IP-камерам. Он работает в большинстве операционных систем (Windows XP, Vista, 7, 8, Linux, Mac OS, Raspbian и т. Д.), И вам не нужно устанавливать какое-либо дополнительное программное обеспечение для его запуска. Выбор за вами.
Я бы не рекомендовал использовать JMF - он полностью устарел, и вам нужно сначала установить его на свой ПК, поэтому, если вы считаете, что ваше приложение переносимо, вы должны помнить об этом.
Я обнаружил, что лучше всего использовать библиотеку JMyron с веб-камерой USB. Вам придется возиться с DLL, потому что он использует нативный код... где-то есть рабочий пример, если вы поищите его в Google (я точно не знаю, где), но я знаю, что вам нужны DLL на вашем пути. Загрузите библиотеку обработки и найдите DLL и банку.
import JMyron.JMyron;
//initializer
int width=100;//insert your numbers here
int height=100;
JMyron jmyron = new JMyron();
jmyron.start(width,height);
//in a loop
jmyron.update();
int[] image = jmyron.image();
image будет int[] с длиной width*height. он хранит пиксели построчно, поэтому первый width
пикселей будет первая строка, вторая width
пиксели будут второй строкой и тд.