Возможно, кстати, некоторые читатели прошлого поста заметили, что нас там ддосили немножко. Кому-то пришло в голову ддосить некоммерческий ресурс с открытым доступом. Мы даже посмеялись) Надеемся, больше таких сложностей не возникнет и все желающие и интересующиеся без проблем, как говорится, потусят на сайте Сочи.Камер.
Сочи.Камера — сайт с трансляцией стримов с более 300 веб-камер, установленных в Сочи и окрестностях. Сайт и весь сервис некоммерческий, создан и поддерживается на собственные средства местным интернет-провайдером «Бизнес-Связь», уже почти 10 лет.
Проект Сочи.Камера начался 24 апреля 2009 года. Именно тогда первые три камеры, установленные по заказу Заявочного комитета «Сочи-2014», вышли в онлайн. Это были виды на пляж у ресторана «Тинькофф» (сейчас ресторан «Старгород»), панорамный вид с БЦ «Олимпийский», вид на реку Сочи. Сейчас, конечно, на тех местах стоят совсем не те камеры, что были установлены тогда, ведь за это время сменилось, по самым скромным подсчетам, аж пять поколений камер. Эти поколения камер условны, это мы сами их так обозначили и ведем такую хронологи. Но на самом деле есть оборудование еще древнее, чем то, о котором сегодня будем вспоминать. В общем, давайте рассмотрим всю эволюцию подробнее, а также расскажем о самых важных параметрах камер для их эффективного использования в проектах типа Сочи.Камеры.
Первыми установленными камерами были Axis211. На этой фотографии одна из первых трех камер. Сейчас она стоит в серверной «Бизнес-Связь» и работает, конечно, в гораздо более щадящих условиях, чем в 2009 году.
Камеры этого поколения не поставлялись целиком, необходимо было покупать отдельно корпус, крепление (нога), объектив и саму камеру. Нужно было самостоятельно аккуратно собрать камеру так, чтобы в условиях повышенной влажности и усиленной ветровой нагрузки она стабильно работала годами. Эта конструкция, кроме неудобств самостоятельной сборки, имела ещё и множество других недостатков. К примеру, у камеры было фактически два стекла — сам объектив и стекло кожуха. Из-за неудачной конструкции и использования «ручной» сборки оба стекла часто запотевали и давали двойную мутность. Вандалоустойчивость была невысокой — камеру у ресторана «Тинькофф» один раз воровали целиком, а в другой раз украли объектив, заменив его на более дешевый.
Цена тоже, мягко говоря, не была достоинством камеры — 40-45 тысяч рублей в 2009 году, что весьма недешево. В общем, устанавливать и обслуживать первые камеры было нелегко, да и изображение было по сегодняшним меркам так себе. Тогда использовался формат MJPEG (Motion JPEG) – это даже не видео, а поток из 24 jpg-картинок в секунду. Для MJPEG формата мы использовали простой движок, который назывался linux DVR software. С каждой камеры шло 10 Мб/сек, при том, что картинка была 640х480 пикселей. Маленький, мутный, дергающийся кадр при весьма серьёзной нагрузке на сеть, которая тогда тоже была не такая мощная, как сейчас.
Представители второго поколения (см. фото ниже) конструктивно мало отличались от первого поколения, они также покупались по частям и собирались самостоятельно. Тогда уже было понятно, что нужно менять формат видео, и мы поменяли серверный софт, перешли на FFmpeg в паре с nginx, стали использовать MPEG 4 и RTSP. Нам пришлось заменить те камеры, которые не поддерживали потоковые видео форматы.
Качество видео немного выросло, и за счет смены формата и замены движка потребление ресурсов снизилось. Существенным недостатком использования библиотеки FFMPEG было то, что там не было автоматического рестарта. По крайней мере все наши эксперименты в этом направлении закончились фэйлом. То есть когда поток с камеры по каким-то причинам прерывался, например, камера выключалась и включалась из-за электропитания, или просто часть пакетов терялась в каналах связи – вещание с этой камеры на сайте не восстанавливалось, хотя сама камера была доступна. Мы это дело мониторили, и рестартовали процесс FFMPEG, когда такое обнаруживалось. Помню, это происходило по нескольку раз на день, и в итоге нас жутко утомило. Мы даже рестарт в Cron добавляли, в общем не дело это было. Вот примерно на этом этапе и начали тестировать Wowza.
Третье поколение камер (см. фото ниже) давало возможность транслировать изображение уже в соотношении сторон 16:9, а не 4:3, и сайт пришлось переписывать. Тогда мы его сделали полностью на ActionScript. Грядущих проблем с Flash, уязвимостей, взломов и утечек, не предвиделось, это была очень популярная платформа. В плеере уже использовался формат 720p, а позже и 1080p, начался постепенный переход к широкоформатному изображению. Кроме этого, было еще одно очень важное обстоятельство, которое повлияло на смену поколения. В связи с отменой лицензионного ограничения на рынке массово появились камеры с поддержкой кодека H.264. Стало возможным снимать и транслировать двухмегапиксельное видео с приемлемым для трансляции в Интернет битрейтом.
Четвертое поколение камер. Эти камеры продавались уже в собранном состоянии, что, конечно, значительно облегчало их монтаж и эксплуатацию. Так что мы стали снимать старые модульные камеры и ставить такие, собранные фабричным способом. Иногда меняли объективы, если вместо дефолтных широкоугольных для желаемой композиции кадра требовались среднефокусные, или даже телеобъективы.
Где-то в это же время из-за лицензионной политики Wowza и отмены пожизненной лицензии на продукт при переходе с 3-й на 4-ую версии этого движка, мы начали первые эксперименты с движком Flussonic.
Мы отказались от вариофокальных объективов почти на всех камерах. Проблема с ними была в том, что как бы мы ни настраивали камеру при установке, как бы плотно ни затягивали винты и стопорные кольца, настройки в результате нагрева и охлаждения сбивались, картинка становилась мутная, углы расплывались. В общем, как говорят фотографы, изображение замыливалось. У фиксированных камер из-за отсутствия дополнительных настроек изображение всегда более стабильное. Кроме того, они дешевле, что, учитывая скромные затраты на проект, тоже было важно.
Конечно, часто приходилось подбирать и устанавливать объектив вручную. Широкоугольные объективы мы снимали; среднефокусные и длиннофокусные объективы заказывали отдельно и вручную устанавливали вместо заводских, теряя, естественно, все гарантии. Например, на камере в аэропорту), которая смотрит на взлет/посадку, вручную поменяли объектив, с предустановленного фабричного 3,6мм на заказанный на Aliexpress 16мм.
Или другой интересный пример с широкоугольной камерой в океанариуме), которая стоит прямо возле стенки аквариума. Там пришлось сделать на камере искусственную «близорукость». Мы её полностью разобрали, механически настроили так, чтобы она фокусировалась на 15 см от линзы, а потом залили резьбу суперклеем, чтобы фокусировка не съехала.
У нас много частных случаев, когда приходится использовать такие хитрости, но много и хорошо отработанных типичных установок, где наш опыт позволяет нам быстро установить камеру и эффективно потом её эксплуатировать.
Что касается вариофокальных объективов, то на сегодняшний день они остались только на поворотных камерах PTZ. Настройка резкости на них идет автоматически, влияние нагрева и охлаждения компенсируется электроникой, и с изображением поэтому всё хорошо.
Корпус этих камер стал почти идеальным, шарнирное колесо позволяет легко выбрать нужное направление, фабричная сборка позволяет избежать проблем с просачиванием влаги внутрь и выходом камеры из строя. Однако заводской «бочонок» для коммутации «витой пары» находится снаружи, и это существенный недостаток. Даже находясь в распаечной коробке, он всё равно может допустить окисление контактов. Это одна из причин, по которым этот тип камер вытесняется у нас более современными моделями.
К слову сказать, снятые камеры не выкидываются. Они либо используются в более простых условиях, как самая первая камера на фото 1, либо хранятся на складе. Компания «Бизнес-Связь» планирует использовать их для создания объекта современного искусства — «веб-камерное дерево». Это «дерево» будет смонтировано при переезде в новый офис, эскизы уже готовы и камерам каждого поколения найдется на нём место.
Пятое, текущее, поколение камер – это видео-кодек Н.265, и звуковой формат AAC. Булет-корпус с большим удобным шарниром и коммутацией ethernet-кабеля внутри – лучшее, что может быть на настоящий момент; полностью герметичный, удобный для настройки и крепления
В зависимости от планируемого места установки — расстояние до объекта, необходимый ракурс, планируемая сцена, например, перекресток или панорама — выбирается предустановленный объектив с 3, 6, 12 или 16 мм фокусным расстоянием.
Важен выбор матрицы, она не должна быть шумной, размытой. Очень много зависит от самой линзы. Определить качество линзы и матрицы без тестирования очень сложно, бывает, что дорогая брендовая камера показывает мутно, а китайский noname показывает отлично. Поэтому мы просто перебирали много камер, экспериментально находя то, что лучше подходит.
Очень важны надежность и влагозащищенность. Влажность у нас высокая, поэтому, наученные опытом, мы используем только герметичные камеры, где соединение всех проводов происходит внутри корпуса.
Стараемся не использовать модели с некоторыми новыми «фишками», если они реально нам не нужны. Например, нам не нужна видео-аналитика, локальная запись на карту памяти, инфракрасная подсветка, мы выбираем камеры без них. Получается оптимально: невысокая цена, порядка 4 000 руб. за камеру, и очень хорошее HD качество.
Большинство фиксированных камер сейчас на сети – это Omny SNR, ActiveCam и Hikvision. Поворотные камеры в основном Hikvision PTZ. У них удобное управление и более стабильный режим патрулирования. Поворотные камеры других брендов иногда теряют эти настройки (точки, скорость перехода между точками, время на точке) при перерывах питания, и тур приходится настраивать заново.
Таков наш опыт в части веб-камер. Ждём новых вопросов!
Источник