Ровно 10 лет назад, в 1991 году, в Кембриджском университете в Англии была установлена первая веб-камера. Установили ее сотрудники университетской компьютерной лаборатории в целях сугубо прозаических - чтобы следить за общественной кофеваркой и не бегать зря по лестницам с кружкой. Потом кто-то из их знакомых наверняка подумал: "А чем моя кофеварка хуже?". И с этого началась эпидемия веб-камер. Правда, к сожалению, сейчас на историческую кофеварку уже не посмотришь - ее продали с аукциона, чтобы купить новую. Но последний кадр из ее жизни, а также краткая биография все так же лежат по адресу (www.cl.cam.ac.uk/coffee/coffee.html).
Из этого краткого исторического экскурса уже видно одно из применений веб-камер - в общем случае это наблюдение за неким объектом в реальном времени. Другое дело, что это за объект? Тут уже все зависит только от фантазии хозяина камеры. Простейший вариант - на других посмотреть, себя показать. Можно долго рассуждать о скрытых склонностях к эксгибиционизму и ссылаться на дедушку Фрейда, но факт остается фактом - множество людей устанавливает у себя камеры потому, что хотят, чтобы совершенно незнакомые люди увидели, как они живут и что делают. Более рациональный вариант - поставить камеру там, куда тяжело добраться физически. Например, камера на южном полюсе - bat.phys.unsw.edu.au/~aasto/. Тут же возникает и третье логичное применение - мониторинг. Скажем, если подвесить камеру над оживленным перекрестком, то можно будет в любой момент узнать, есть ли там пробки. Опять же, веб-камера на крыше самого высокого здания города в комплекте с термометром и барометром (кстати, такие метеорологические комплекты для веб-камер уже делают) даст массу полезной информации любому туристу.
А если подойти к этому вопросу шире, то веб-камеры - это еще одна степень человеческой свободы. Всегда можно сказать, что газеты и телевидение подвергаются цензуре. Но то, что передает веб-камера, это то, что она видит. Так что на любое событие можно посмотреть самому и составить свое мнение (конечно, если там есть камера - но ведь установить камеру может любой, и не так уж это сложно). Так сказать, "большой брат смотрит на тебя", только наоборот.
Однако теория - теорией, а как организовать хоть самую простенькую веб-камеру самостоятельно? Оказывается, нет ничего проще. В принципе, веб-камерой можно назвать практически любое устройство, способное снимать изображение и передавать его в компьютер для последующей публикации в интернете. С большой натяжкой в список можно включить даже старенькую "Смену 8М", при условии, что пленки с нее сразу же сканируются и выкладываются в веб. Естественно, что и любой цифровой фотоаппарат или видеокамеру, поддерживающие управление с компьютера, можно превратить в веб-камеру. Однако не стоит изобретать велосипед - можно воспользоваться готовым "железом". Так что дальше речь пойдет о вполне конкретной камере - Logitech QuickCam Web.
Камера эта представляет собой вполне законченное устройство - КМОП-сенсор, позволяющий снимать видео в разрешении до 320х240 и с частотой кадров до 15 fps. Естественно, можно делать и отдельные статические снимки - почти как цифровой камерой, правда, с намного худшим качеством. Стильный дизайн (это, как известно, общая черта всех продуктов Logitech). Встроенный микрофон для одновременной трансляции звука и видео. Подключение к компьютеру по шине USB - ее пропускной способности вполне хватает для трансляции изображения с камеры. К тому же USB весьма удобная шина в том плане, что весь процесс подключения занимает минут 5, не больше. И вот мы уже имеем работающий источник живого видео - что с ним теперь делать? Наступило время выбирать и ставить софт.
Простейший вариант - трансляция в сеть статических кадров, снимаемых камерой через определенные промежутки времени. Собственно, с этого и начиналась история камер. Такую возможность предоставляют практически все программы для работы с веб-камерами (а их, надо сказать, существует огромное множество). Для примера можно привести, скажем, WebCam32 (www.webcam32.com) и SpyCam (www.getspycam.cjb.net), ну и, естественно, родной софт из комплекта поставки Logitech QuickCam. В самом простейшем случае схема работы выглядит так. На вашем компьютере (естественно, подключенном к интернету) установлена камера и, скажем, WebCam32. Кроме того, где-то в интернете у вас есть страничка, на которую вы хотите выкладывать фотографии с камеры. Через заданные промежутки времени программа делает снимок и сохраняет его на диске. Затем по FTP-протоколу передает картинку на сервер с вашей страничкой (если необходимо, то в процессе самостоятельно дозванивается до провайдера). Таким образом, картинки на страничке постояннно и автоматически обновляются. Впрочем, возможны и более хитрые варианты. Например, та же WebCam32 может сама выступать в роли HTTP-сервера, достаточно присвоить ей IP-адрес, и картинки можно будет получать буквально из "первых рук". Также возможен вариант, когда WebCam32 будет использоваться CGI-скриптом с сайта. Но это уже детали организации HTML и прочего кода, которых мы касаться не будем.
Единственное замечание, которое надо сделать - страничка должна самостоятельно обновлять свое содержимое. Простейший метод - включить в заголовок документа следующий тег: <meta http-equiv="refresh" content="time-to-refresh"> (теперь страница будет полностью обновляться каждые "time-to-refresh" секунд). Более изящные решения с помошью Java-апплета или скриптов на JavaScript или VBS позволяют обновлять только саму картинку, что выглядит намного профессиональнее и быстрее работает. Описание того, как это сделать, можно найти в любом руководстве по веб-программированию или в документации к большинству программ управления веб-камерой.
Но выкладывать отдельные кадры - это уже "не совсем то", намного интереснее показывать "живое" видео с "живым" же звуком. Правда, тут надо учесть, что передача видео даже в маленьком окошке и низком качестве требует хорошего канала. В принципе, при небольшой частоте кадров модема хватает, но с трудом. Для трансляции видео можно воспользоваться все той же WebCam32 или такими программами, как iVista (www.inetcam.com) или TrueTech WebCam (www.truetech.com). Организация странички для приема видео будет посложнее, чем в случае простых картинок, поскольку тут идет передача потока данных. Однако есть один большой плюс. Все три вышеупомянутые программы (и родной софт Logitech) берут эту проблему на себя. При первом запуске камеры вам сразу же выделяется страничка на специальном сайте, причем она сконфигурирована таким образом, чтобы можно было смотреть с нее видео. В общем, от пользователя требуется минимум усилий, что приятно. Кстати, сразу хочу сказать, что прокси-серверы и файерволы исключительно недружелюбно относятся к потоковому видео.
Еще одна отдельная тема - видеоконференции. В фантастических романах очень любят описывать видеотелефоны - так вот это оно, только работающее намного хуже и кривее, но все же работающее. В принципе, два человека, имеющие веб-камеры и доступ в интернет, могут сидеть на разных континентах и замечательно видеть друг друга на экране компьютера и слышать в динамиках. Наиболее распространенная программа для видеоконференций - Microsoft NetMeeting (входит в состав Windows) - штука достаточно удобная, особенно для локальной сети, где не надо особо задумываться о пропускной способности.
И еще одна интересная функция веб-камер, реализованная в большинстве программ, - обнаружение движения в кадре. Реализуется она просто: достаточно сравнить два последовательных кадра, и если разница между ними окажется больше заданной - что-нибудь сделать. Элементарно, зато сколько новых возможностей. Если камера, установленная, скажем, в запертой квартире, вдруг увидела движение у входной двери, можно послать хозяину на пейджер сообщение: "Поздравляю, уважаемый, вас грабят". А копию вместе с последующими кадрами отправить в милицию. А может, вы уже давно хотели выяснить, кто таскает из вашего стола сигареты, пока вы обедаете?
В общем, как видите - возможностей у веб-камер масса. Достаточно захотеть с ними разобраться. Ну и канал в интернет побольше, конечно...
Константин
АФАНАСЬЕВ,
[email protected]
Камера Logitech QuickCam Web была любезно предоставлена фирмой "Белкантон"
Горячие темы