Структуры таблиц базы данных 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 |
когда. |