Документация для версии Интеллект 4.10.4. Документация на другие версии также доступна.

Предыдущая страница GRABBER  MONITOR Следующая страница


Объект CAM соответствует системному объекту Камера.

От объекта CAM поступают события, представленные в таблице. Запуск процедур происходит при возникновении соответствующего события. Формат процедуры событий для объекта Камера:

OnEvent("CAM","_id_","_событие_")

Описание событий от объекта CAM:

События

Описание событий

Комментарий

"ARM"

Камера поставлена на охрану.


"ATTACH"

Подключение.


"BLINDING"

Камера залеплена.


"DETACH"

Обрыв.

Событие генерируется при потере входного сигнала с камеры на плате видеоввода.

"DISARM"

Камера снята с охраны.


"FILE_REC_ERROR"

Ошибка записи на диск.

Событие генерируется, когда происходит ошибка записи видеоархива на диск.

"MD_START"

Тревога.


"MD_STOP"

Конец тревоги.


"PRINT"

Печать кадра.


"REC"

Запись на диск.


"REC_STOP"

Остановка записи на диск.


"UNBLINDING"

Камера открыта.


"RECORDER_ON"

Запись включена.


"RECORDER_OFF"

Запись выключена.


"DISC_MOUNT"

Диск подмонтирован.


"DISC_UNMOUNT"

Диск отмонтирован.


"FINISHED_AVI_EXPORT"

Экспорт видео завершен

В случае, если попытка экспорта видео завершилась неудачей, событие имеет ненулевой параметр error_result.

В параметре param<0> содержится дополнительная информация, отображаемая в соответствующем столбце в Протоколе событий, в формате: "ИмяКомпьютера;ПериодЭкспорта;ИмяПользователя;ИдентификаторПользователя", например, param0<LOCALHOST;04-06-18 16:50:55_04-06-18 16:55:55;;1>

"MD_LIMIT"Превышено количество объектов в кадре

Событие генерируется при превышении количества обнаруженных трекером объектов в кадре (задание данного параметра описано в документе Руководство Администратора, раздел Создание и настройка объекта Трекер). Событие генерируется при каждом изменении количества объектов (в большую или меньшую сторону), пока оно не будет меньше пороговой.

В параметре object_count<> передается число объектов в кадре, которое обнаружено трекером, превышает заданный лимит и отличается от предыдущего значения.

См. также описание события NEW_OBJECT ниже.

"NEW_OBJECT"Трекер обнаружил новый объект в кадре

Помимо прочих, содержит следующие параметры:

total<> – общее количество объектов в кадре на момент возникновения события.

new_id<> – идентификатор обнаруженного объекта.

"ARCH_DELETE"

Удаление записиУдаление записи архива по камере из Монитора видеонаблюдения.
"ARCH_PROTECTED"Файл защищен от перезаписи

Событие отображается, когда пользователь защищает файл от перезаписи.

В параметре param<0> содержится дополнительная информация об имени компьютера, фрагменте, имени и id пользователя, отображаемая в столбце Доп. инфо в Протоколе событий, в формате:

"ИмяКомпьютера;ЗащищенныйПериод;ИмяПользователя;ИдентификаторПользователя", например, param0<LOCALHOST;04-06-18 16:50:55.612_04-06-18 16:55:55.612;User 1;1>

"ARCH_UNPROTECTED"Снята защита файла от перезаписи

Событие отображается, когда пользователь снимает защиту файла от перезаписи.

В параметре param<0> содержится дополнительная информация об имени компьютера, фрагменте, имени и id пользователя, отображаемая в столбце Доп. инфо в Протоколе событий, в формате:

"ИмяКомпьютера;ЗащищенныйПериод;ИмяПользователя;ИдентификаторПользователя", например, param0<LOCALHOST;04-06-18 16:50:55.612_04-06-18 16:55:55.612;User 1;1>

FRAME_SKIPPEDПропуск кадра

Событие поступает в ПК Интеллект при наличии проблемы с пропуском кадров. Отдельное событие о каждом пропущенном кадре.

Даное событие можно отключить с помощью ключа реестра FileSystem.NotifyCoreFrameSkipped (см. Справочник ключей реестра).

ARCH_BOOKMARKEDСоздана закладка

Событие отображается, когда пользователь добавляет закладку.

В параметре param<0> (столбце Доп. инфо в Протоколе событий) содержится комментарий к закладке.

ARCH_UNBOOKMARKEDУдалена закладка

Событие отображается, когда пользователь удаляет закладку.

TEMPERATURE_ALARMПорог температурыВ параметре param0<> содержится значение температуры, полученное от тепловизора.

Формат оператора для описания действий с камерой:

DoReact("CAM","_id_","_команда_" [,"_параметры_"]);

Список команд и параметров для объекта CAM представлен в таблице.

Команда – описание команды

Параметры

Описание параметров

"SETUP" – устанавливает (изменяет) параметры камеры.

rec_priority<>

Приоритет записи (от 0 до 3, 0 – обычный, 3 – все ресурсы).

compression<>

Степень компрессии (0 – компрессия отсутствует, 1- макс. качество, …, 5 – мин. качество).

sat_u<>

Насыщенность цвета (0 – мин, 10 – макс).

proc_time<>

Период дозаписи (0 – 30 сек).

manual<>

Управление настройкой яркости и контрастности (0 – ручное; 1 – автоматическое; 2 – автоматическое,  но около значений, выставленных вручную).

contrast<>

Контрастность (0 – мин, 10 – макс).

md_size<>

Размер объектов детектора движения (1-16).

md_mode<>

Режим записи пауз (1 – включено, 0 выключено).

audio_type<>

Тип звукового сопровождения.

pre_rec_time<>

Время предзаписи  (0 – 20 сек).

bright<>

Яркость (0 – мин, 10 – макс).

audio_id<>

Номер микрофона (пустой параметр, если нет микрофона).

rec_time<>

Скорость записи (1 – 30 кадров/сек, 0 – не используется).

alarm_rec<>

Запись тревог (1 – включено, 0 – выключено).

hot_rec_time<>

Время горячей записи (0 – 30 сек).

hot_rec_period<>

Период горячей записи (0 – 20 сек).

mux<>

Номер канала (0 – 1 канал, 15 – 16 канал).

color<>

Цвет (0 – черно-белый, 1 – цветной).

activity<>

-

arch_days<>

Количество дней архива.

blinding<>

Камера залеплена.

config_id<>

-

decoder<>

-

flags<>

Флаги.

fps<>

Скорость записи (0 – не используется, 1 – 30 кадров/сек).

ifreq<>

Частота опорных кадров в последовательности (1 – каждый кадр опорный, 2 – 100 кадр).

mask 0, mask1, mask2, mask3, mask4

Маска детектора.

md_contrast<>

Чувствительность детектора движения (0 – 15).

motion<>

Оценка движения компрессора (5 – 255).

name<>

Имя объекта.

password_crc<>

Пароль на видеоархив.

priority<>

Приоритет источника постановки на запись (0 – автоматическое, 1 – ручное).

resolution<>

Разрешение (0 – стандартное CIF, 1 – высокое 2CIF, 2 – максимальное 4CIF).

type<>

Тип объекта.

yuv<>

Цветовая схема кодирования видеосигнала (0 – YUV4:2:0, 1 – YUV4:2:2).

"DELETE" – отключает камеру.

-

-

"START_VIDEO" – включает видеопоток для текущей камеры.

slave_id<>

Имя компьютера, к которому подключена камера.

comress<>

Степень компрессии.

register_only<>

-

"STOP_VIDEO" – выключает видеопоток для текущей камеры.

slave_id<>

Имя компьютера, к которому подключена камера.

"REQUEST_MASK"

mask<>

Маска.

"MUX1", "MUX2", "MUX3" – вывести изображение камеры на 1, 2, 3 аналоговые выходы.

-

-

"ACTIVATE" – вывести камеру на монитор.

monitor<>

Номер монитора.

"ARM" – поставить камеру на охрану.

-

-

"DISARM" – снять камеру с охраны.

-

-

"REC" – начать запись камеры.

time<>

Время записи в секундах, если равно нулю, то записывается 1 кадр.

rollback<>

Если равно 1, то запись производится с откатом.

priority<>Задает приоритет команды начала записи. Подробнее см. Приложение 1. Приоритеты команд начала и остановки записи
stream_id<>

Задает номер потока для записи. Номер потока имеет вид "n.m", где n – id камеры, m – номер потока.

Примечание. Если указанный поток не используется ни по какому другому назначению, кроме записи по команде (и по выбору на клиенте), необходимо убедиться, что для него не установлен флажок Блокировать отключение неиспользуемых потоков – см. Руководство Администратора, раздел Панель настройки объекта Камера.

"REC_STOP" – остановить запись камеры.

priority<>

Задает приоритет команды остановки записи. Подробнее см. Приложение 1. Приоритеты команд начала и остановки записи

user_id<>Если остановка записи была выполнена пользователем из Монитора видеонаблюдения, то в данном параметре передается идентификатор пользователя. В противном случае данный параметр отсутствует.
from_macro<>Если остановка записи была выполнена по макрокоманде, то в данном параметре передается идентификатор макрокоманды. В противном случае данный параметр отсутствует.

"SET_MASK" – установить маску.

mask<>

Маска.

"ADD_SUBTITLES" – добавить титры.

command<>

Текст накладываемых титров.

title_id<>

Идентификатор объект Титрователь, используемого для наложения титров.
page<>Обязательный параметр при записи титров в базу данных титров для обеспечения в дальнейшем возможности поиска по титрам. Возможные значения: BEGIN (начало записи в базе), END (конец записи в базе).

"SIP_CONNECT"  – Sip подключен

-

-

"SIP_DISCONNECT" – Sip отключен

-

-

"SET_IPINT_PARAM" – Установить (изменить) параметры IP-устройства. Реакция позволяет менять настройки IP-устройства не заходя в его web-интерфейс.

Примечание. Для работы реакции необходимо включить режим многопоточного видеосигнала – см. Руководство администратора, раздел Настройка многопоточного видеосигнала  , а также Приложение 2. Определение значений param_id и param_value для реакции SET_IPINT_PARAM

param_id<>Название параметра. Набор параметров для каждой камеры индивидуален – см.  Приложение 2. Определение значений param_id и param_value для реакции SET_IPINT_PARAM
param_value<>Значение параметра. Набор параметров для каждой камеры индивидуален – см. Приложение 2. Определение значений param_id и param_value для реакции SET_IPINT_PARAM
vstream_id<>Номер видеопотока (не обязательный параметр). Имеет вид "Номер камеры"."Номер потока", например 1.1, 1.2.
GET_FRAME – получить кадр с камеры, даже если она не отображается на Мониторе видеонаблюдения.path<>Путь для сохранения кадра. Если параметр отсутствует, в системе будет сформировано событие FRAME_SENT с параметром data. Обработка данного события описана в документе Руководство по программированию (JScript) в разделе Метод SaveToFile.
stream<>

Необязательный параметр. Задает поток в ПК Интеллект, с которого требуется получить кадр. Поток можно указать по номеру или по назначению. Возможные назначения:

  • stream_archive – поток для записи в архив
  • stream_alarm – поток для записи в архив по тревогам
  • stream_client – поток для отображения
  • stream_analytic – поток для видеоаналитики

Номер потока состоит из идентификатора камеры и номера потока, например, 4.3 – третий поток с камеры 4.

time<>Необязательный параметр. Указывается, если требуется запросить кадр архива. Формат значения параметра: ДД-ММ-ГГГГ ЧЧ:ММ:СС, например, time<19-09-2017 11:35:34>
gate<>Необязательный параметр. Задает сетевое имя Видеошлюза, из архива которого следует получать кадр.
arch<>Необязательный параметр. Задает сетевое имя Долговременного архива, из которого следует получать кадр.
slave_id<>Необязательный параметр. Задает сетевое имя Сервера, из архива которого следует получать кадр.
password_crc<>Необязательный параметр. Задает CRC-последовательность, которая будет записана в результирующий файл, содержащий запрошенный кадр.

ARCH_DEL_RECORD – удалить записи архива за определенный период. 


fromTime<>

Обязательный параметр. Время в формате ГГГГ-ММ-ДДTЧЧ:ММ:СС.ННН, где ННН – миллисекунды. Будут удалены записи, начиная с первой, содержащей указанный момент времени, и заканчивая последней, содержащей момент времени toTime. Если не указано время в параметре toTime, будет удалена только одна запись.

toTime<>

Необязательный параметр. Время в формате ГГГГ-ММ-ДДTЧЧ:ММ:СС.ННН, где ННН – миллисекунды. Описание см. выше.
REC_RESTART – перезапустить запись по камере.--

ARCH_BOOKMARK_RECORD – создать закладку.

time1<>Дата начала периода архива, включенного в закладку, в формате ДД-ММ-ГГ ЧЧ:ММ:СС.ННН, где ННН – миллисекунды.
time2<>Дата окончания периода архива, включенного в закладку, в формате ДД-ММ-ГГ ЧЧ:ММ:СС.ННН, где ННН – миллисекунды.
comment<>Комментарий к закладке.
slave_id<>

Идентификаторы компьютера и Монитора видеонаблюдения, с использованием которых будет выполняться создание закладки. Формат параметра: <имя компьютера>.<айди монитора>.

Например, slave_id<WS2.1> – здесь WS2 является идентификатором компьютера, а 1 – идентификатором Монитора видеонаблюдения.

CRUISE_START – Автопанорамированиеcruise_id<>Номер маршрута на камере
action<>

Выполняемое действие:

CRUISE_START – начать автопанорамирование по указанному маршруту.

PATROL_PLAY – начать патрулирование по указанному маршруту.

cam_id<>Идентификатор камеры
"GET_DEPTH" – получить глубину архива. В ответ на реакцию в системе формируется событие ARCHIVE_DEPTH от объекта SLAVE (см. SLAVE). Отсутствие одного или обоих параметров означает запрос глубины по записям для всех возможных значений параметра.drive<>

Диск или сетевой путь, по которому запрашивается глубина архива.

Название диска задается формате "<буква диска>:\\", например drive<D:\\>

Примечание. Символ "\" – экранируемый.

Сетевой путь задается в формате UNC.

arch

Указывает, что требуется запросить глубину долговременного архива.

Пример.

DoReactStr("CAM","2","GET_DEPTH","drive<D:\\>,cam<2>,arch");
gate

Указывает, что требуется запросить глубину архива видеошлюза.

Пример.

DoReactStr("CAM","1","GET_DEPTH","drive<V:\\>,gate");

Свойства объекта «CAM» показаны в таблице.

Свойства объекта « CAM »

Описание свойств объекта

ID<>

Идентификатор объекта.

PARENT_ID<>

Идентификатор родительского объекта.

TELEMETRY_ID<>

Идентификатор модуля телеметрии (ID поворотника).

REGION_ID<>

Идентификатор региона.

Примеры использования событий и реакций объекта Камера:

  1. При постановке первой камеры на охрану выполнить перевод камеры в цветной режим и начать запись с нее.

    OnEvent("CAM","1","ARM") //первая видеокамера поставлена на охрану
    {
    	DoReact("CAM","1","SETUP","color<1>"); // установка цветного режима видеокамеры
    	DoReact("CAM","1","REC"); //запись с первой видеокамеры
    }
  2. Необходимо поставить на охрану первую видеокамеру при отключении пятой видеокамеры.

    OnEvent("CAM","5","DETACH") пятая видеокамера отключена 
    {
    	DoReact("CAM","1","ARM"); //первая видеокамера поставлена на охрану
    }
  3. Необходимо использовать половину ресурсов при записи у первой видеокамеры (то есть, если в системе через первую плату видеоввода подключено 4 видеокамеры, то первая будет записывать – со скоростью 6 кадров/сек, а остальные три – по 2 – 2,5 кадра/сек.), если она находится в тревожном состоянии.

    OnEvent("CAM","1","MD_START") //первая видеокамера находится в тревожном состоянии
    {
    	DoReact("CAM","1","SETUP","rec_priority<2>"); // использование половины ресурсов при записи
    }
  4. Необходимо установить максимальную компрессию синхронно с четвертым микрофоном звуковой платы на первой видеокамере, при записи на диск видео с первой видеокамеры.

    OnEvent("CAM","1","REC") //первая видеокамера ведет запись на диск
    {
    	DoReact("CAM", "1", "SETUP", "compression<5>, audio_type<OLXA_LINE>, audio_id<4>"); //первая видеокамера, максимальная компрессия, 
    синхронно с четвертым микрофоном звуковой платы.
    }
  5. Необходимо начать запись с первой видеокамеры с минимальным качеством в черно-белом режиме, когда она выйдет из состояния тревоги.

    OnEvent("CAM","1","MD_STOP") // первая видеокамера перестала находиться в тревожном состоянии
    {
    	value = 5;
    	DoReact("CAM", "1", "SETUP", "compression<" + value + ">,сolor<0>"); 
    	//начать запись первой видеокамеры с минимальным качеством в ч/б режиме.
    }
  6. Необходимо начать запись с первой видеокамеры в режиме «откат», когда она снята с охраны.

    OnEvent("CAM","1","DISARM")  //первая видеокамера снята с охраны
    {
    	DoReact("CAM","1","REC","rollback<1>");  // Начать запись с первой видеокамеры в режиме «откат»
    }
  7. Установить новые параметры видеоканала при подключении первой видеокамеры.

    OnEvent("CAM","1","ATTACH") //подключена первая видеокамера
    {
    	VIDEO_CANAL_ID = GETOBJECTPARAM("CAM","1","PARENT_ID"); // определяем идентификатор видеоканала, которому принадлежит первая видеокамера
    	DoReact("GRABBER",VIDEO_CANAL_ID,"SETUP","chan<0>,mode<0>,resolution<1>,format<pal>"); //устанавливаем новые параметры видеоканала.
    }



  8. По макрокоманде 2 запустить автопанорамирование на камере 1.

    OnEvent ("MACRO","2","RUN")
    {
        DoReact("CAM","1","CRUISE_START","cruise_id<1>,action<CRUISE_START>,cam_id<1>");
    }

Функция проверки состояния объекта CAM:

CheckState("CAM","номер","состояние")

Объект CAM может находиться в состояниях, описанных в таблице.

Состояние объекта «CAM»

Описание состояния

"ALARMED"

Камера находится в тревожном состоянии.

"DISARM_DETACHED"

Нет сигнала от камеры.

"DETACHED"

Нет сигнала от камеры.

"ARMED"

Камера поставлена на охрану.

"DISARMED"

Камера снята с охраны.