Skip to content

Timing Correlation between VideoCam (based on Kerberos.io)

Notifications You must be signed in to change notification settings

coxifred/PimpMyKerberos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Timing Correlation between VideoCam (based on Kerberos.io)

Table of Contents

Screenshots

Under the hood

pimpMyKerberos is a small footprint java (jetty) server which unify all your cameras in one single interface. As Kerberos.io, it displays your captures with chronology, but this time will all cameras time-synchronized (Interesting if you want to correlate some events on multiple locations). pimpMyKerberos scans capture's directories and sort files by time. Also works with every CCTV system which dump pictures or mp4 captures. pimpMyKerberos provides an https access broadcasting your local network cameras.

What pimpMyKerberos doesn't do:

  • It doesn't connect directly to your cameras, but only provides pictures/movies made by Kerberos.io

Requirements

Installation in dockerMode

Full installation (automatic pull for kerberos.io). You will receive, kerberos.io docker containers and 1 pimpMyKerberos docker container

git clone https://github.com/coxifred/pimpMyKerberos.git
cd pimpMyKerberos/PimpMyKerberos
./setup.sh docker

For a pimpMyKerberos docker container:

docker pull coxifred/pimpmykerberos:1.0

Installation in hostMode with gradle compilation

You will receive, kerberos.io docker containers but pimpMyKerberos will run on the host (not in a docker container)

Extra requirement:

  • Java JDK version >= 1.8 (yum install java-1.8.0-openjdk-devel)

Download project

git clone https://github.com/coxifred/pimpMyKerberos.git

cd pimpMyKerberos/PimpMyKerberos
./setup.sh half-docker

Installation in binary mode without docker

Extra requirement:

  • Java JDK version >= 1.8 (yum install java-1.8.0-openjdk-devel or pkg install jdk-8)

Download assets (jar file) here.

Installation in compilation mode without docker

Extra requirement:

  • Java JDK version >= 1.8 (yum install java-1.8.0-openjdk-devel or pkg install jdk-8)

Download project

git clone https://github.com/coxifred/pimpMyKerberos.git
./gradlew fatjar

Configuration

Login prompt, user -> admin, password -> admin

If you're in docker mode, configuration file should be in /kerberos/pimpMyKerberos/aCore.xml

If you're in docker mode, configuration file should be in configFile/aCore.xml (under the place you git project)

<pimpmykerberos.core.Core>
  <coreFile>./configFile/aCore.xml</coreFile>          <!-- Config file, for information only, read-only-->
  <webServerPort>443</webServerPort>                   <!-- Port for https-->
  <webSocketPort>4430</webSocketPort>                  <!-- Port for websocket, not used, read only-->
  <webServerIp>0.0.0.0</webServerIp>                   <!-- Can be blank, ip for binding web server-->
  <debug>true</debug>                                  <!-- Debug mode true|false-->
  <deepLearning>false</deepLearning>                   <!-- DeepLearning module true|false not yet finished, let false-->
  <trustIp>192.168.2</trustIp>                        <!-- With this mask adress, no password if match <ip style> -->
  <timeBetweenScan>60000</timeBetweenScan>             <!-- Time (in ms) between 2 directory analysis -->
  <debugJetty>false</debugJetty>                       <!-- Debug mode for jetty true|false -->
  <adminPassword>admin</adminPassword>                 <!-- Password for admin -->
  <maxLogEntries>1000</maxLogEntries>                  <!-- Max logs in memory -->
  <kerberosioPath>Z:\kerberos.io</kerberosioPath>      <!-- Path to kerberos structure, containing camera dir-->
  <maxDisplayLineInGUI>5</maxDisplayLineInGUI>         <!-- Crunch size in GUI -->
  <daysBeforePurge>30</daysBeforePurge>                <!-- After x days, older files are cleaned-->
  <maxDisplayColumnInGUI>6</maxDisplayColumnInGUI>     <!-- Max Columns in GUI -->
  <nightMode>0</nightMode>                             <!-- 1 for Night (black background) , 0 for day (white background) -->
  <muteMode>0</muteMode>                               <!-- Mute mode 1 for no message on GUI, 0 for messages-->
  <sessionId>0</sessionId>                             <!-- Not used -->
  <dataPath></dataPath>                                <!-- Not used -->
  <influxDbUrl></influxDbUrl>                          <!-- Url of a influxDb, files recorded by hour by cam, if empty no send -->
  <influxDbName>pimpMyKerberos</influxDbName>          <!-- influxDb database name -->
  <influxDbUser>root</influxDbUser>                    <!-- influxDb account -->
  <influxDbPasswd>root</influxDbPasswd>                <!-- influxDb passwd -->
</pimpmykerberos.core.Core>

Update

git pull

then relaunch the appropriate installation mode.

Next features

Mobile responsive. Reduce javascript memory leak from html5 video tag.