This project will no longer be maintained by Intel.
Intel has ceased development and contributions including, but not limited to, maintenance, bug fixes, new releases, or updates, to this project.
Intel no longer accepts patches to this project.
If you have an ongoing need to use this project, are interested in independently developing it, or would like to maintain patches for the open source software community, please create your own fork of this project.
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.