This sample implements libraries of video files content analysis, database ingestion, content search and visualization:
- Ingest: Analyze video content and ingest the data into the VDMS.
- VDMS: Store metadata efficiently in a graph-based database.
- Visualization: Visualize content search based on video metadata.
This is a concept sample in active development.
The sample is powered by the following Open Visual Cloud software stacks:
-
Media Analytics:
- The GStreamer-based media analytics stack is used for object, face and emotion detection. The software stack is optimized for Intel® Xeon® Scalable Processors.
-
NGINX Web Service:
- The NGINX/FFmpeg-based web serving stack is used to store and segment video content and serve web services. The software stack is optimized for Intel Xeon Scalable Processors.
-
Time Zone: Check that the timezone setting of your host machine is correctly configured. Timezone is used during build. If you plan to run the sample on a cluster of machines managed by Docker Swarm or Kubernetes, please make sure to synchronize time among the manager/master node and worker nodes.
-
Build Tools: Install
cmake
andm4
if they are not available on your system. -
Docker Engine:
- Install docker engine.
- Install docker compose, if you plan to deploy through docker compose. Version 1.20+ is required.
- Setup docker swarm, if you plan to deploy through docker swarm. See Docker Swarm Setup for additional setup details.
- Setup Kubernetes, if you plan to deploy through Kubernetes. See Kubernetes Setup for additional setup details.
- Setup docker proxy as follows if you are behind a firewall:
sudo mkdir -p /etc/systemd/system/docker.service.d
printf "[Service]\nEnvironment=\"HTTPS_PROXY=$https_proxy\" \"NO_PROXY=$no_proxy\"\n" | sudo tee /etc/systemd/system/docker.service.d/proxy.conf
sudo systemctl daemon-reload
sudo systemctl restart docker
mkdir build
cd build
cmake ..
make
See also: Customize Build Process.
Use the following commands to start/stop services via docker-compose:
make start_docker_compose
make stop_docker_compose
Use the following commands to start/stop services via docker swarm:
make update # optional for private registry
make start_docker_swarm
make stop_docker_swarm
See also: Docker Swarm Setup.
Use the following commands to start/stop Kubernetes services:
make update # optional for private registry
make start_kubernetes
make stop_kubernetes
See also: Kubernetes Setup.
Launch your browser and browse to https://<hostname>
. The sample UI is similar to the following:
- For Kubernetes/Docker Swarm,
<hostname>
is the hostname of the manager/master node. - If you see a browser warning of self-signed certificate, please accept it to proceed to the sample UI.