Timing Correlation between VideoCam (based on Kerberos.io)
- Screenshots
- Under the hood
- Requirements
- Installation dockerMode
- Installation hostMode with gradle compilation
- Installation binary mode without docker
- Installation in compilation mode without docker
- Configuration
- Update
- Next features
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
- Cameras :)
- Linux distribution
- Kerberos.io (docker mode with docker-compose) yum install docker ; curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose ; chmod a+x /usr/local/bin/docker-compose
- Git client (yum install git)
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
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
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.
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
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>
git pull
then relaunch the appropriate installation mode.
Mobile responsive. Reduce javascript memory leak from html5 video tag.