Структуры таблиц базы данных AVReg 5.5.
| Название поля |
Тип данных |
Описание |
| DT1 |
datetime |
время наступления события, условно - время
записи в таблицу |
| DT2 |
datetime |
* |
| CAM_NR |
tinyint(3) |
номер камеры или 0 для “не-камерных“
событий |
| EVT_ID |
tinyint(3) |
числовой идентификатор события [1..32]
определяющий тип события |
| SER_NR |
smallint(5) |
* |
| FILESZ_KB |
int(10) |
* |
| FRAMES |
mediumint(8) |
* |
| U16_1 |
smallint(5) |
* |
| U16_2 |
smallint(5) |
* |
| EVT_CONT |
char(125) |
имя файла или краткое описание “не-файловых“
событий |
* - в зависимости от типа события (поле EVT_ID)
пример SQL запроса
SELECT * FROM EVENTS
WHERE
(CAM_NR IN (0, 1)) AND
(
(EVT_ID IN (23,32) AND
((DT1 BETWEEN '2010-04-22 15:00:00' AND '2010-04-22 16:59:59')
OR
(DT2 BETWEEN '2010-04-22 15:00:00' AND '2010-04-22 16:59:59'))
)
OR
(EVT_ID IN (16,20,13,14,5,3,1,4,15,17,18,19,21) AND
(DT1 BETWEEN '2010-04-22 15:00:00' AND '2010-04-22 16:59:59')
)
)
ORDER BY DT1
Описание данных в полях, в зависимости от типа события в
значении поля EVT_ID [1..32]:
| SER_NR |
Событие |
Значение других значимых полей |
| 0 |
запуск |
DT1=DT2 - время запуска демона |
| 1 |
останов |
DT1 - время останова, DT2 - время запуска |
| 2 |
reload(перечитка DB конфигурации) |
DT1 - время останова, DT2 - время запуска |
В поле U16_1 - 1 ( для сетевых камер) и 2 для video4linux.
В поле U16_2 - 1 (захват видео), 2 (захват аудио).
| SER_NR |
Событие |
Значение других значимых полей |
| 0 |
начало захвата |
DT2 - время последнего read() для сетевых
камер или время смены состояния канала для video4linux-камер |
| 1 |
останов захвата |
не используется в наст. время |
| 2 |
пауза |
не используется в наст. время |
| 3 |
сбой захвата |
DT1 - время сбоя, DT2 - время начала |
Следует учитывать:
-
для video4linux (локальных аналоговых камер)
событие «начало захвата» по запуску демона не
вырабатывается;
-
для всех камер событие «останов захвата»
по остановке демона не вырабатывается;
-
событие «сбой захвата» может быть прислано
несколько раз подряд, например, при разрыве соединения с сетевой
камерой и, следом, с ошибкой очередной попытки установления
соединения;
-
в некоторых случаях DT2 может быть 1970-01-01
03:00:0 или 0(unixtime), например, при самом первом соединении с
ip-камерой.
Для предотвращения чрезмерного увеличения
размера базы данных частыми записями с информацией о запросах
сетевых клиентов в базу данных сообщения с типом EVT_ID = 4
попадают, только при запуске демона avregd с параметром
“
-v” (verbose). Внешнему скрипту
event-collector
(если он только разрешён и используется) в любом случае передаются
все сообщения.
Значения полей U16_1 и U16_2 такие же как для EVT_ID = 3 (см.
выше). DT2 - время первого запроса или начала сессии (в рамках
одного постоянного соединения http persistant connection).
| SER_NR |
Событие |
| 0 |
новый http запрос |
| 1 |
tcp соединение закрыто |
Примечание: эти события формируются только в режиме записи
«Выборочный» ( параметры save_video/save_audio).
| Название поля |
Описание |
| DT2 |
время предыдущей команды |
| SER_NR |
номер сессии записи |
| FRAMES |
1 - вкл., 3 - выкл. записи |
| U16_1 |
источник команды: 1 - демон, 2 - детектор
движения, 3 - детектор аудио, 20 - оператор |
| U16_2 |
тип медиа: 1 - видео, 2 - аудио, 3 -
аудио+видео, 7 - аудио+видео+субтитры |
| EVT_ID |
Описание значения поля DT1 |
Описание значения поля DT2 |
| 13 - начало сессии |
время захвата первого кадра на котором
сработал детектор |
время последней детекции движения в
предыдущей сессии |
| 14 - её завершение |
«сейчас» минус значение параметра
motion_series_end |
время начала этой сессии |
Далее описаны значения 4-х полей - состояние детектора движения
на первом кадре с движением и на кадре или на котором детектор
«закрыл» сессию.
| Название поля |
Описание |
| FILESZ_KB |
кол-во изменённых пикселей в первом кадре с
движением (абсолют. или % - в зависимости от режима работы
детектора, см. настройки diff_pxls_threshold) |
| FRAMES |
порог, действующее значение
motion_sensor |
| U16_1 |
значение noise_filter |
| U16_2 |
значение средней яркости в этом кадре
[0..255] |
| SER_NR |
Описание |
| 0 |
засветка прекратилась |
| 1 |
обнаружили засветку |
| 2 |
затемнение прекратилось |
| 3 |
обнаружили сильное затемнение кадра |
| Название поля |
Описание |
| DT1 |
время первичной детекции состояния засветки
или затемнения |
| DT2 |
DT2 = DT1 события - начала этого режима,
определено только при «выкл.» режимов (SER_NR = 0,2) |
| FILESZ_KB |
продолжительность режима в секундах, определено только при
«выкл.» режимов (SER_NR = 0,2) |
| FRAMES |
текущий порог срабатывания
({dazzle,darkness}_threshold) |
| U16_1 |
среднее значение яркости в начале режима |
| U16_2 |
среднее значение яркости сейчас |
| EVT_ID |
Описание |
| 15 |
принудительный (сплошной) режим записи |
| 16 |
первый кадр «с движением» в сессии
движения |
| 17 |
кадр «с движением» в сессии движения |
| 18 |
pre_record кадр, «без движения» |
| 19 |
post_record кадр, «без движения» |
| 20 |
кадр-отметка, snapshot |
| 21 |
обычный кадр, без движения |
| Название поля |
Описание |
| SER_NR |
порядковый номер сессии движения или 0, если
детектор не используется |
| FILESZ_KB |
размер файла в КилоБайтах (1kB = 1024B) |
| U16_1 |
разрешение кадра по горизонтали |
| U16_2 |
разрешение кадра по вертикали |
| Название поля |
Описание |
| DT1 |
время последнего кадра, записанного
в видео-файл |
| DT2 |
время первого кадра, записанного в
видео-файл |
| SER_NR |
порядковый номер сессии движения или 0, если
детектор не используется |
| FILESZ_KB |
размер файла в КилоБайтах (1kB = 1024B) |
| FRAMES |
количество кадров в
видеопоследовательности |
| U16_1 |
разрешение видео по горизонтали |
| U16_2 |
разрешение видео по вертикали |
| EVT_CONT |
относительное имя файла в каталоге
{storage-dir} |
| Название поля |
Описание |
| DT1 |
время последнего аудио блока,
записанного в аудио-файл |
| DT2 |
время первого аудио блока,
записанного в аудио-файл |
| SER_NR |
сейчас всегда 0 |
| FILESZ_KB |
размер файла в КилоБайтах (1kB = 1024B) |
| FRAMES |
bit rate |
| U16_1 |
количество каналов |
| U16_2 |
sample rate |
| EVT_CONT |
относительное имя файла в каталоге
{storage-dir} |
| Название поля |
Описание |
| HOST |
Хост или подсеть пользователя. |
| USER |
Логин. |
| PASSWD |
Закодированный пароль. |
| STATUS |
Группа, [0-5] - инсталляторы, админы,
просмотр архива, операторы наблюдения, только просмотр. |
| ALLOW_CAMS |
Список доступных камер. |
| FORCED_SAVING_LIMIT |
Максимальная длительность принудительной
записи (по команде) в минутах. |
| SESSIONS_PER_CAM |
Ограничение количества одновременных
просмотров каждой конкретной камеры. |
| LIMIT_FPS |
Ограничение скорости отдаваемого видеопотока
для каждой камеры. |
| NONMOTION_FPS |
то же что LIMIT_FPS, но в моменты когда движение не
обнаруживается. |
| LIMIT_KBPS |
то же что LIMIT_FPS, но в КилоБайтах (прим. в
версии 5.5 не задействовано). |
| SESSION_TIME |
Ограничение длительности одного непрерывного
сеанса просмотра камеры в реальном времени. |
| SESSION_VOLUME |
Ограничение объёма одного непрерывного сеанса
просмотра камеры в реальном времени. |
| LONGNAME |
Полное имя пользователя. |
| CHANGE_HOST |
Последние изменения: откуда, |
| CHANGE_USER |
кто и |
| CHANGE_TIME |
когда. |
| Название поля |
Описание |
| BIND_MAC |
Не используется, должно быть «local» |
| CAM_NR |
Номер камеры. |
| PARAM |
Имя параметра. |
| VALUE |
Значение параметра (строковое
представление). |
| CHANGE_HOST |
Последние изменения: откуда, |
| CHANGE_USER |
кто и |
| CHANGE_TIME |
когда. |
В последующих версиях таблица возможно будет
переименована в LAYOUTS.
| Название поля |
Описание |
| BIND_MAC |
Не используется, должно быть «local» |
| DISPLAY |
Для какого дисплея раскладка: левого (L) или
правого (R). |
| MON_NR |
Номер раскладки [0-9]. |
| MON_TYPE |
Тип раскладки: одна камера, квадратор,
мультиэкран и т.п. |
| MON_NAME |
Тестовое имя раскладки. |
| IS_DEFAULT |
Если 1, то раскладка по умолчанию. (Прим.: в
версии 5.5 не используется) |
| WIN1-WIN32 |
Номер камеры в конкретном окне (соотв. имени
поля), если NULL - пустое окно без камеры. |
| CHANGE_HOST |
Последние изменения: откуда, |
| CHANGE_USER |
кто и |
| CHANGE_TIME |
когда. |